隐藏在垂直屏幕上的隐藏面板调整大小

隐藏在垂直屏幕上的隐藏面板调整大小

问题描述:

嘿所以我有一个问题让我生气。基本上我有一个xaml元素,里面有一个包装面板和一个列表框。列表框在调整大小时没有问题,但即使将水平对齐设置为拉伸,换行面板也不会调整大小。隐藏在垂直屏幕上的隐藏面板调整大小

有没有人有关如何解决这个问题的任何建议,因为它真的让我疯了吗?首先十分感谢。

<UserControl x:Class="citeright_word.SearchItemsPanel" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     xmlns:controls="http://metro.mahapps.com/winfx/xaml/controls"   
     xmlns:local="clr-namespace:citeright_word" 
     xmlns:iconPacks1="http://metro.mahapps.com/winfx/xaml/iconpacks" 

     mc:Ignorable="d" 
     d:DesignHeight="562.5" d:DesignWidth="300"> 
<UserControl.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="../Resources/Styles.xaml"/> 
     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary> 
</UserControl.Resources> 
<Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="*"/> 
    </Grid.ColumnDefinitions> 



    <Label x:Name="label" Content="Search:" Margin="5,0,0,0" 
    VerticalAlignment="Top" FontSize="16" FontWeight="Bold"/> 
    <WrapPanel HorizontalAlignment="Stretch" Width="auto" 
    Margin="5,30,5,506.4"> 
     <Button Click="refreshItems" Background="#FFF7F7F7" 
    VerticalAlignment="Top"> 
      <iconPacks1:PackIconMaterial Kind="Refresh" MaxHeight="12" 
    MaxWidth="12"/> 
     </Button> 
     <TextBox x:Name="textBox" controls:TextBoxHelper.Watermark="Search 
Items" controls:TextBoxHelper.ClearTextButton="True" 
VerticalAlignment="Top" 
KeyDown="textBox_KeyDown" /> 
    </WrapPanel> 
    <ListBox x:Name="listBox" Margin="5,63,5,5" 
HorizontalContentAlignment="Stretch" 
ScrollViewer.HorizontalScrollBarVisibility="Disabled"> 

    </ListBox> 
</Grid> 
    </UserControl> 

enter image description here

这是你在找什么?

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="Auto" /> 
     <RowDefinition Height="Auto" /> 
     <RowDefinition Height="*" /> 
    </Grid.RowDefinitions> 

    <Label 
     x:Name="label" 
     Grid.Row="0" 
     Content="Search:" 
     Margin="5,0,0,0" 
     VerticalAlignment="Top" 
     FontSize="16" 
     FontWeight="Bold" 
     /> 
    <Grid 
     Margin="5" 
     Grid.Row="1" 
     > 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="Auto" /> 
      <ColumnDefinition Width="*" /> 
     </Grid.ColumnDefinitions> 
     <Button 
      Grid.Column="0" 
      Click="refreshItems" 
      Background="#FFF7F7F7" 
      VerticalAlignment="Top" 
      > 
      <iconPacks1:PackIconMaterial 
       Kind="Refresh" 
       MaxHeight="12" 
       MaxWidth="12" /> 
     </Button> 
     <TextBox 
      Grid.Column="1" 
      Margin="2,0,0,0" 
      x:Name="textBox" 
      VerticalAlignment="Top" 
      KeyDown="textBox_KeyDown" 
      controls:TextBoxHelper.Watermark="Search Items" 
      controls:TextBoxHelper.ClearTextButton="True" 
      /> 
    </Grid> 
    <ListBox 
     x:Name="listBox" 
     Grid.Row="2" 
     Margin="5" 
     HorizontalContentAlignment="Stretch" 
     ScrollViewer.HorizontalScrollBarVisibility="Disabled"> 
     <ListBoxItem>DSG Global Inc (re)</ListBoxItem> 
     <ListBoxItem>Law Society of New Brunswick v. Aucoin</ListBoxItem> 
    </ListBox> 
</Grid> 

我做了一些替代测试,因为我没有你的图标或你的文本框的行为或在列表框中的东西。

enter image description here

我觉得深深incongenial与利润率做XAML布局。我知道设计师以这种方式定位元素,但我只用设计师对我手写的XAML进行可视化检查。我发现使用Grid行和列,stackpanels,wrappanels和奇怪的UniformGrid会更容易和更强大。我认为这不仅仅是我:在堆栈溢出中,我注意到边缘驱动的布局与那些对XAML没有经验的人很相关。

+1

我会永远爱你.....非常感谢! – Seamy