2016-05-16 4 views
1
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="300" /> 
     <ColumnDefinition Width="*" /> 
    </Grid.ColumnDefinitions> 
    <Rectangle Fill="#8686EA" Grid.Column="0" /> 
    <Rectangle Fill="#FFFFE1" Grid.Column="1" /> 
    <TextBlock x:Name="NickNameBlock" HorizontalAlignment="Left" Margin="10,22,0,0" TextWrapping="Wrap" Text="Nickname" VerticalAlignment="Top"/> 
    <TextBox x:Name="NickName" HorizontalAlignment="Left" Margin="84,10,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="109"/> 
    <TextBlock x:Name="ChannelBlock" HorizontalAlignment="Left" Margin="10,59,0,0" TextWrapping="Wrap" Text="Channel" VerticalAlignment="Top"/> 
    <TextBox x:Name="Channel" HorizontalAlignment="Left" Margin="84,47,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="109"/> 
    <Button x:Name="JoinButton" Content="Join" HorizontalAlignment="Left" Margin="198,47,0,0" VerticalAlignment="Top"/> 
    <Grid Grid.Column="1"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="630" /> 
      <ColumnDefinition Width="200" /> 
     </Grid.ColumnDefinitions> 
     <Rectangle Fill="white" Stroke="Black" StrokeThickness="0" Grid.Column="0" Margin="10,27,0,100" /> 
     <!--<Rectangle Fill="white" Stroke="Black" StrokeThickness="1" Grid.Column="1" Margin="6,10,71,196" />--> 
     <Grid Grid.Column="1" Margin="0,0,0,196"> 
      <Grid.RowDefinitions> 
       <RowDefinition Height="40"/> 
       <RowDefinition Height="30"/> 
       <RowDefinition Height="*"/> 
      </Grid.RowDefinitions> 
      <Rectangle Fill="#8686EA" Stroke="Black" StrokeThickness="0" Grid.Row="0" Margin="10,0,0,0" /> 
      <Rectangle Fill="#CCCCFF" Stroke="Black" StrokeThickness="0" Grid.Row="1" Margin="10,0,0,-5" RenderTransformOrigin="0.505,0.719" Grid.RowSpan="2" /> 
      <ListBox x:Name="listBox" Grid.Row="2" Margin="10,10,0,0" VerticalAlignment="Top" VerticalContentAlignment="Stretch" ScrollViewer.VerticalScrollBarVisibility="Visible"> 
       <ListBox.Items> 
        <ListBoxItem Content="Tewl"/> 
        <ListBoxItem Content="Ryu"/> 
        <ListBoxItem Content="Clint"/> 
        <ListBoxItem Content="Bak3r"/> 
        <ListBoxItem Content="sm0kex"/> 
        <ListBoxItem Content="Jack"/> 
        <ListBoxItem Content="Bam"/> 
        <ListBoxItem Content="Jay"/> 
        <ListBoxItem Content="Tewl"/> 
        <ListBoxItem Content="Ryu"/> 
        <ListBoxItem Content="Clint"/> 
        <ListBoxItem Content="Bak3r"/> 
        <ListBoxItem Content="sm0kex"/> 
        <ListBoxItem Content="Jack"/> 
        <ListBoxItem Content="Bam"/> 
        <ListBoxItem Content="Jay"/> 
        <ListBoxItem Content="Tewl"/> 
        <ListBoxItem Content="Ryu"/> 
        <ListBoxItem Content="Clint"/> 
        <ListBoxItem Content="Bak3r"/> 
        <ListBoxItem Content="sm0kex"/> 
        <ListBoxItem Content="Jack"/> 
        <ListBoxItem Content="Bam"/> 
        <ListBoxItem Content="Jay"/> 
       </ListBox.Items> 
      </ListBox> 
     </Grid> 
    </Grid> 
</Grid> 

updated listbox in full mode updated nicklist resized still wont expand listboxListbox в сетке не будет изменять размеры

это reupdated для Криса W. это имеет вся проблема code..my должна быть выше Ненавижу ширина/высота/поля ..

+1

Снимите жесткий набор Высота и отрицательная маржа в списке ListBox для стартеров ..... Затем измените значение «auto» на «*» на вашем последнем RowDefinition. –

+0

@ Chris W. благодарю вас за поддержку ... Я внес изменения, которые вы мне сказали после внесения изменений с последнего поста ... Я все еще не могу получить полный экран списка, когда окно не максимизировано [code] –

+0

Set VerticalContentAlignment = Stretch/VerticalAlignment = Stretch, если это не так, то у вас больше конфликт в структуре вашего макета. –

ответ

0

Так что ваши поля и трёе двоеточия и ненужные только собираются причинить вам больше головную боль в будущем. Если вы не возражаете, я просто пошел вперед и переписал то, что у вас было там, и сделал все, чтобы он отвечал на любые изменения размера и все, что вы делаете. См. Изменения, сделанные ниже, включая ваш ответ. Если бы это был я, я бы сделал нечто подобное;

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="300" /> 
     <ColumnDefinition Width="*" /> 
     <ColumnDefinition MinWidth="200" Width="Auto"/> 
    </Grid.ColumnDefinitions> 

    <!-- Left Pane --> 
    <Grid VerticalAlignment="Top" Margin="10"> 
     <Grid.RowDefinitions> 
      <RowDefinition/> 
      <RowDefinition/> 
     </Grid.RowDefinitions> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="Auto"/> 
      <ColumnDefinition Width="*"/> 
      <ColumnDefinition Width="Auto"/> 
     </Grid.ColumnDefinitions> 
     <Grid.Resources> 
      <Style TargetType="TextBox"> 
       <Setter Property="MinHeight" Value="26"/> 
       <Setter Property="Margin" Value="5"/> 
      </Style> 
      <Style TargetType="TextBlock"> 
       <Setter Property="FontWeight" Value="SemiBold"/> 
       <Setter Property="VerticalAlignment" Value="Center"/> 
       <Setter Property="HorizontalAlignment" Value="Right"/> 
      </Style> 
     </Grid.Resources> 

     <!-- These didn't seem to have a purpose, so commenting out for now. 
     <Rectangle Fill="#8686EA" Grid.Column="0" /> 
     <Rectangle Fill="#FFFFE1" Grid.Column="1" /> 
     --> 

     <TextBlock x:Name="NickNameBlock" Text="Nickname"/> 
     <TextBox Grid.Column="1" x:Name="NickName" 
       TextWrapping="Wrap" Text=""/> 

     <TextBlock Grid.Row="1" x:Name="ChannelBlock" Text="Channel" /> 
     <TextBox Grid.Row="1" Grid.Column="1" x:Name="Channel" 
       TextWrapping="Wrap" Text=""/> 

     <Button Grid.Row="1" Grid.Column="2" x:Name="JoinButton" Content="Join" 
       MinWidth="50" Margin="0,5"/> 

    </Grid> 
    <!-- End Left Pane --> 

    <!-- Center Pane --> 
    <Rectangle Grid.Column="1" Fill="white"/> 
    <!-- End Center Pane --> 

    <!-- Right Pane --> 
    <Grid Grid.Column="2" Background="#CCCCFF"> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="40"/> 
      <RowDefinition Height="40"/> 
      <RowDefinition Height="*"/> 
     </Grid.RowDefinitions> 
     <Rectangle Fill="#8686EA"/> 

     <ListBox x:Name="listBox" Grid.Row="2" 
       ScrollViewer.VerticalScrollBarVisibility="Visible"> 
      <ListBox.Items> 
       <ListBoxItem Content="Tewl"/> 
       <ListBoxItem Content="Ryu"/> 
       <ListBoxItem Content="Clint"/> 
       <ListBoxItem Content="Bak3r"/> 
       <ListBoxItem Content="sm0kex"/> 
       <ListBoxItem Content="Jack"/> 
       <ListBoxItem Content="Bam"/> 
       <ListBoxItem Content="Jay"/> 
       <ListBoxItem Content="Tewl"/> 
       <ListBoxItem Content="Ryu"/> 
       <ListBoxItem Content="Clint"/> 
       <ListBoxItem Content="Bak3r"/> 
       <ListBoxItem Content="sm0kex"/> 
       <ListBoxItem Content="Jack"/> 
       <ListBoxItem Content="Bam"/> 
       <ListBoxItem Content="Jay"/> 
       <ListBoxItem Content="Tewl"/> 
       <ListBoxItem Content="Ryu"/> 
       <ListBoxItem Content="Clint"/> 
       <ListBoxItem Content="Bak3r"/> 
       <ListBoxItem Content="sm0kex"/> 
       <ListBoxItem Content="Jack"/> 
       <ListBoxItem Content="Bam"/> 
       <ListBoxItem Content="Jay"/> 
      </ListBox.Items> 
     </ListBox> 
    </Grid> 
    <!-- End Right Pane --> 

</Grid> 

Результат:

enter image description here

Надеется, что это помогает, веселит.

+0

PS Если вы действительно делаете приложение IRC от начала до конца (подчеркивая, что часть при его завершении), мы можем разговаривать в автономном режиме, и я, возможно, захочу пожертвовать какое-то время прохладному интерфейсу для ya, чтобы расширить свое портфолио, используя его в качестве примера. За исключением того, что я в конечном итоге делаю слишком много бесплатной работы для людей, которые не заканчивают свой конец, что делает бессмысленным для меня помощь. Удачи в любом случае! :) –

+0

большое спасибо @ChrisW. нет, мы крайне заняты тем, что заканчиваем это ... это для начинающего чат-сервера www.irc7.com с почти идентичным движком в качестве оригинального чата msn ... нам просто нужно сделать клиента сейчас и избавиться от msnchat ocx никто больше не хочет использовать ... мне бы понравилась любая помощь, которую вы можете предложить для дизайна gui –

0

Установка последнего RowDefinition на *, удаление полей и изменение VerticalAlignment = Top, казалось, сработало для меня.

<Grid Grid.Column="1" Margin="0,0,0,0"> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="40"/> 
      <RowDefinition Height="30"/> 
      <RowDefinition Height="*"/> 
     </Grid.RowDefinitions> 
     <Rectangle Fill="#8686EA" Stroke="Black" StrokeThickness="0" Grid.Row="0" Margin="10,0,0,0" /> 
     <Rectangle Fill="#CCCCFF" Stroke="Black" StrokeThickness="0" Grid.Row="1" Margin="10,0,0,0" RenderTransformOrigin="0.505,0.719" /> 
     <ListBox x:Name="listBox" Grid.Row="2" Margin="10,0,0, 0" VerticalAlignment="Top"> 
      <ListBox.Items> 
       <ListBoxItem Content="Tewl"/> 
       <ListBoxItem Content="Ryu"/> 
       <ListBoxItem Content="Clint"/> 
       <ListBoxItem Content="Bak3r"/> 
       <ListBoxItem Content="sm0kex"/> 
       <ListBoxItem Content="Jack"/> 
       <ListBoxItem Content="Bam"/> 
       <ListBoxItem Content="Jay"/> 
      </ListBox.Items> 
     </ListBox> 
    </Grid> 
+0

Это должна быть моя верхняя иерархия –

Смежные вопросы