RowDefinition.Height ="Auto"
सेट करना सभी मामलों के लिए उपयुक्त नहीं है, अक्सर हम चाहते हैं कि * हमारी पंक्तियों का आकार बदलना।
सूची से पंक्तियों को गतिशील रूप से/प्रोग्रामेटिक रूप से जोड़ने और हटाने की बजाय, अगली पंक्ति/पंक्तियों में पहली पंक्तियों को खींचना आसान और सुरक्षित है।
यह ग्रिड पर पहले आइटम पर ग्रिड.रोस्पेन सेट करने के लिए डेटा ट्रिगर का उपयोग करके किया जा सकता है। नीचे एक पूर्ण उदाहरण है - इसे क्रिया में देखने के लिए इसे एक नई WPF विंडो में पेस्ट करें।
<Grid>
<Grid.Resources>
<BooleanToVisibilityConverter x:Key="visConverter"></BooleanToVisibilityConverter>
</Grid.Resources>
<Grid.RowDefinitions>
<RowDefinition Height="*"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="*"></RowDefinition>
</Grid.RowDefinitions>
<Grid Grid.Row="0" Background="Orange">
<Grid.Style>
<Style TargetType="Grid">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=toggle1, Path=IsChecked}" Value="False">
<Setter Property="Grid.RowSpan" Value="3"></Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
</Grid>
<GridSplitter Grid.Row="1" ResizeBehavior="PreviousAndNext" HorizontalAlignment="Stretch" Height="3"
Visibility="{Binding ElementName=toggle1, Path=IsChecked, Converter={StaticResource visConverter}}"></GridSplitter>
<Grid Name="bottomGrid" Grid.Row="2" Background="LightBlue"
Visibility="{Binding ElementName=toggle1, Path=IsChecked, Converter={StaticResource visConverter}}">
</Grid>
<ToggleButton Name="toggle1" VerticalAlignment="Top">Hide/Show</ToggleButton>
</Grid>
स्रोत
2012-02-05 00:44:08
की संभावित डुप्लिकेट [डब्ल्यूपीएफ में ग्रिड पंक्ति छुपाएं] (http://stackoverflow.com/questions/2502178/hide-grid-row-in-wpf) – Palec