मेरे पास एक WPF डेटाग्रिड है जो ऊंचाई में बढ़ता है जब मैं उस डेटा को जोड़ता हूं जो इसकी प्रारंभिक ऊंचाई के अंदर फिट नहीं होगा। मैं नहीं चाहता कि ऊंचाई तब तक बदल जाए जब तक कि उपयोगकर्ता विंडो आकार को बढ़ा न ले। क्या इस ऑटो-आकार को रोकने का कोई तरीका है?WPF डेटाग्रिड की ऊंचाई बढ़ जाती है जब डेटा
<Window x:Class="WpfDataGridSizeTest.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Loaded="Window_Loaded"
SizeToContent="WidthAndHeight">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<DockPanel Grid.Row="0">
<DataGrid x:Name="wordsDataGrid" VerticalAlignment="Top" ItemsSource="{Binding}" MinHeight="100" SelectionMode="Single" AutoGenerateColumns="False" VerticalScrollBarVisibility="Auto" >
<DataGrid.Columns>
<DataGridTextColumn Header="Column" Width="Auto" Binding="{Binding AString}"/>
</DataGrid.Columns>
</DataGrid>
</DockPanel>
</Grid>
</Window>
public partial class MainWindow : Window
{
MyList myList = new MyList();
public MainWindow()
{
InitializeComponent();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
wordsDataGrid.DataContext = myList;
for (int i = 0; i < 100; ++i)
{
myList.AddOne("blah blah");
}
}
}
public class MyList : ObservableCollection<AClass>
{
public MyList() { }
public void AddOne(string aString)
{
base.Add(new AClass(aString));
}
}
public class AClass
{
public string AString { get; set; }
public AClass(string aString)
{
AString = aString;
}
}
इस्तेमाल किया एक 'RowDefinition' है कि' ऊंचाई = "*" ' –
मैं इस @Meleak की कोशिश की में यह रखो, लेकिन यह यह कोई फर्क नहीं पड़ता। – Ian