Здравствуйте!
Опыт верстки в WPF у меня минимальный, т.е. разумеется, я знаю, как нарисовать окно, в нем сетку-grid, и на ней кнопки, но именно как лучше верстать относительно сложный интерфейс - с этим проблемы.
Технически мне надо меню с множеством опций - радиобаттонов, чекбоксов, вкладок, выпадающих списков, кнопок.
Поначалу я рисовал все кнопки, чекбоксы и т.п. графически. Однако когда мне понадобилось переместить группу элементов, то почему-то начала при обводе рамкой выделяться не группа элементов на вкладке, а сама вкладка. В итоге я стал рисовать тупо в xaml, накрутив кучу grid-ов, в которых рассовал элементы. Однако в итоге я получил продукт, который, судя по всему, так и придется далее верстать в xaml
Например, я сверстал вот такое убожество.
Сразу вопросы:
правильно ли было так делать, или стоило как-то по-другому?
Фрагмент кода одного из элементов (все не вставляется почему-то, 10 тыс. символов ограничение)
spoiler<Grid Width="800" HorizontalAlignment="Left" Grid.Row="0" Grid.ColumnSpan="2">
<Grid.RowDefinitions>
<RowDefinition Height="15*"/>
<RowDefinition Height="15*"/>
<RowDefinition Height="15*"/>
<RowDefinition Height="15*"/>
<RowDefinition Height="15*"/>
<RowDefinition Height="15*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="400"/>
<ColumnDefinition Width="400"/>
</Grid.ColumnDefinitions>
<TextBlock Text="Параметры одностороннего ОМП" Height="20" Grid.Row="0"/>
<TextBlock Text="Ток в месте КЗ определяется через" Height="20" Grid.Row="1"/>
<RadioButton Name="rbtn_setKf" Content="Kfав (чисто аварийный ток КЗ фазы)" Grid.Row="2" />
<RadioButton Name="rbtn_setKf1" Content="Kf1ав (чисто аварийный ток прямой последовательности)" Grid.Row="3"/>
<RadioButton Name="rbtn_setK2" Content="Kf2 (ток обратной последовательности)" Grid.Row="4"/>
<RadioButton Name="rbtn_setK0" Content="Kf0 (ток нулевой последовательности, возможна низкая точность)" Grid.Row="5"/>
<CheckBox Name="chbx_setMultipleShots" Content="ОМП по серии значений послеаварийного тока" Grid.Row="1" Grid.Column="1"/>
</Grid>