2015-05-17 59 views
0

我寫了一個顯示客戶網格的簡單WPF窗口。WPF - 在th中看不到按鈕查看設計

在我添加了一個按鈕「添加新客戶的網格底部

,但它融合成窗口的背景,我不能看到它在景觀設計

這是代碼:

<Window x:Class="NihulMlay._1" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     Title="                 Customers " Height="120" Width="600"> 
    <Grid> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="300" /> 
      <ColumnDefinition Width="300" /> 
     </Grid.ColumnDefinitions> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="40" /> 
      <RowDefinition Height="40" /> 
     </Grid.RowDefinitions> 
     <Button FontWeight="Bold">Customer name</Button> 
     <Button Grid.Column="1" FontWeight="Bold">Name</Button> 
     <Label Grid.Row="1"></Label> 
     <Label Grid.Column="1" Grid.Row="1"></Label> 
     <Button Grid.ColumnSpan="2" Content="Add a new Customer" HorizontalAlignment="Left" Height="100" Margin="270,114,0,-173" Grid.Row="1" VerticalAlignment="Top" Width="75"/> 
    </Grid> 
</Window> 

感謝。

+0

Windows和Visual Studio版本,你用什麼?我可以在VS 2012中看到你的Button很好。 – Ian

回答

2

你的問題是120窗口高度,一旦你調整它說350,可以看到按鈕。

上按鈕所處的保證金:

Margin="270,114,0,-173" 

這使得114的頂緣,按鈕高度爲100和行上述被設置爲40。這值單獨將使254總需要高度以查看所有內容。

+0

如果我在「350」上設置高度,我可以在網格中看到「添加新客戶」按鈕。但是我想從底部的網格中看到它.. –

+0

@ZagGol然後將它移出網格定義。如果我理解你的問題,你想看到頁面底部的按鈕。您需要爲客戶的內容使用網格,然後將按鈕放置在外部網格中並將其放置在垂直對齊的底部。順便說一句,好的發現保證金問題約翰+1。 – XAMlMAX

+0

繼續,您可能已經使用過設計器來放置按鈕並將其移動到網格之外。這將**不**移動網格外的按鈕。如果您移動網格,按鈕也會移動,它會將其放置在網格的相對位置。你最好的選擇是使用另一個容器。 – XAMlMAX

2

我認爲你錯認爲GridDataGridGrid是一個區域,其中包含其他控件DataGrid表示控件以表格形式顯示數據。看看你的代碼示例,我認爲DataGrid是你想要的。

假設你是真正的意思Grid,那麼你可以將整個Grid在另一個容器將您Button出來(例如DockPanel)是這樣的:

<DockPanel> 
    <Button DockPanel.Dock="Bottom" Content="Add a new Customer" Height="100" Width="139"/> 
    <Grid> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="300" /> 
      <ColumnDefinition Width="300" /> 
     </Grid.ColumnDefinitions> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="40" /> 
      <RowDefinition Height="40" /> 
     </Grid.RowDefinitions> 
     <Button FontWeight="Bold">Customer name</Button> 
     <Button Grid.Column="1" FontWeight="Bold">Name</Button> 
     <Label Grid.Row="1"></Label> 
     <Label Grid.Column="1" Grid.Row="1"></Label> 
    </Grid> 
</DockPanel>