我有DataGrid
我正在使用RowDetailsTemplate
來顯示所選DataGrid
項目的詳細信息。顯示的信息與「SubItems」類似,因此我使用ListBox
和TextBlock
和兩個CheckBox
控件來顯示所有信息。
控件使用Grid
進行定位,但我無法將CheckBox
控件居中在Grid
內。他們總是左對齊。
我在Stackoverflow上看到過類似的問題,但沒有爲我工作的幾個問題。我如何將兩個CheckBox
控件集中到他們分配給的Grid.Column
?這是我的XAML代碼:列表框中的網格中的複選框水平對齊不起作用
<DataGrid.RowDetailsTemplate>
<DataTemplate>
<ListBox Name="lbDependencyDetails" HorizontalContentAlignment="Stretch" ItemsSource="{Binding Path=DependencyView, UpdateSourceTrigger=PropertyChanged}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid HorizontalAlignment="Stretch">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="55" />
<ColumnDefinition Width="55" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0"
Grid.ColumnSpan="2"
Text="{Binding Path=Dependency.SoftwareName}"
Margin="{Binding Path=Margin}"
HorizontalAlignment="Left" />
<!--<GridSplitter HorizontalAlignment="Right" Grid.Column="1" Width="2" />-->
<CheckBox Grid.Column="2"
IsChecked="{Binding Path=Dependency.IsMarkedForReinstall, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
HorizontalAlignment="Center"
IsEnabled="False"
Width="55" />
<CheckBox Grid.Column="3"
IsChecked="{Binding Path=Dependency.IsMarkedForRepair, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
HorizontalAlignment="Center"
IsEnabled="False"
Width="55" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</DataTemplate>
就是這樣!非常感謝!你能幫我理解一下這個問題嗎?如果我將複選框的寬度設置爲55,那麼完整的空間是多少? Grid.Column? – sevi