2

我将窗口设置为SizeToContent="WidthAndHeight",在我的窗口中有一行控件,我想定义窗口的宽度。在这些控件下面,我想要一个具有三列的 DataGrid。

但是,我似乎无法均匀分布三列,以使它们具有相同的大小并使用可用空间。有没有办法在 C#.NET 中做到这一点?

4

1 回答 1

2

您可以通过 DataBinding 来完成。例如:

<Window x:Class="WpfApplication2.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" SizeToContent="WidthAndHeight">
  <StackPanel Orientation="Vertical">
    <StackPanel Orientation="Horizontal" x:Name="panel">
        <Label Content="1" Width="90"/>
        <Label Content="2" Width="90"/>
        <Label Content="3" Width="90"/>
    </StackPanel>

    <DataGrid Width="{Binding ActualWidth, ElementName=panel}">
        <DataGrid.Columns>
            <DataGridTextColumn Header="1" Width="*"/>
            <DataGridTextColumn Header="2" Width="*"/>
        </DataGrid.Columns>
    </DataGrid>
  </StackPanel>
</Window>
于 2013-07-23T10:06:44.540 回答