You could try the following option.
This avoids the more complicated rectangle split machinery and gives direct control over every line type.
\documentclass[tikz,border=5mm]{standalone}
\begin{document}
\begin{tikzpicture}[
thickline/.style={line width=1.2pt},
longdash/.style={dash pattern=on 12pt off 7pt},
every node/.style={font=\sffamily\small}
]
% Size of the big rectangle
\def\W{12}
\def\H{8}
% y-coordinates of the horizontal dividing lines
\def\yA{6.0}
\def\yB{4.1}
\def\yC{2.2}
% Outer rectangle
\draw[thickline] (0,0) rectangle (\W,\H);
% Internal horizontal lines
\draw[thickline,longdash] (0,\yA) -- (\W,\yA);
\draw[thickline] (0,\yB) -- (\W,\yB);
\draw[thickline,dotted] (0,\yC) -- (\W,\yC);
% Text
\node[anchor=north west, align=left] at (1.4,7.4)
{box1 says hello\\also in second line};
\node[anchor=north west, align=left] at (6.1,5.5)
{box2 does not say\\anything};
\node[align=center] at (6,3.25)
{probably I would prefer\\all text centered};
\node[anchor=west, align=left] at (0.9,1.1)
{Or maybe I'd prefer\\all left aligned?};
\end{tikzpicture}
\end{document}
