我希望根據DataGrid
擁有兩個DataGrid
的平等高度,這兩個數據具有更多數據,並因此而變得更高。換句話說,無論數據輸入如何,我都希望有兩個DataGrid
高度相同。我有一行和幾列,其中一個DataGrid
需要一列,另一個DataGrid
需要另一列。如果DataGrid
之一得到更多輸入,則它會延長。我想要另一個DataGrid
與下面的空白空間一樣高。我想知道如何讓它工作。任何DataGrid
都應根據高度較高的DataGrid
自動展開。任何想法都非常感謝!如何根據另一個高度來擴展DataGrid的高度?
下面是樣品XAML:
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="DataGridExpand.MainWindow"
x:Name="Window"
Title="MainWindow"
Width="640" Height="480">
<Window.Resources>
<XmlDataProvider x:Key="Info" XPath="Info/Values">
<x:XData>
<Info xmlns="">
<Values Name="Value1" />
<Values Name="Value2" />
<Values Name="Value3" />
<Values Name="Value4" />
<Values Name="Value5" />
<Values Name="Value6" />
<Values Name="Value7" />
<Values Name="Value8" />
<Values Name="Value9" />
</Info>
</x:XData>
</XmlDataProvider>
<XmlDataProvider x:Key="Info2" XPath="Info2/Values2">
<x:XData>
<Info2 xmlns="">
<Values2 Name="Value1" />
<Values2 Name="Value2" />
<Values2 Name="Value3" />
<Values2 Name="Value4" />
<Values2 Name="Value5" />
</Info2>
</x:XData>
</XmlDataProvider>
</Window.Resources>
<Grid x:Name="LayoutRoot" Margin="10" >
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="49*" />
<ColumnDefinition Width="20" />
<ColumnDefinition Width="49*" />
</Grid.ColumnDefinitions>
<Border Padding="10" BorderBrush="Black" Background="#FFD2D2D2">
<DataGrid x:Name="Main" GridLinesVisibility="Horizontal" AutoGenerateColumns="False"
ItemsSource="{Binding XPath=/Info2/Values2}"
DataContext="{Binding Source={StaticResource Info2}}" Margin="10">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding [email protected]}" Foreground="#FF6E6E6E" Width="160" />
</DataGrid.Columns>
</DataGrid>
</Border>
<GridSplitter x:Name="GridSplitter" ResizeBehavior="PreviousAndNext" HorizontalAlignment="Stretch" Grid.Column="1" />
<Border Grid.Column="2" Padding="10" BorderBrush="Black" Background="#FFD2D2D2">
<DataGrid x:Name="Main1" GridLinesVisibility="Horizontal" AutoGenerateColumns="False" Margin="10"
ItemsSource="{Binding XPath=/Info/Values}"
DataContext="{Binding Source={StaticResource Info}}">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding [email protected]}" Foreground="#FF6E6E6E" Width="160" />
</DataGrid.Columns>
</DataGrid>
</Border>
</Grid>
謝謝你的幫助。就我而言,我只能有一個網格。看起來我無法實施這項技術。有任何想法嗎? – vladc77 2011-02-05 20:27:10
我需要datagrid的高度,因爲我可能在datagrid頂部的那一行有其他元素。因此,我需要將數據網格擴展到行的底部,因爲如果其他列具有較高的數據網格,它將不會像另一個數據網格一樣高。這兩個datgrid都是一樣的高度。 – vladc77 2011-02-05 20:30:55