我知道這已被問了好幾次,但無論我讀了多少個教程,我都無法理解它。我有一個有三個ColumnDefinitions的網格,可以通過兩個GridSplitter調整大小。我想要的是它下面的另一個網格,有三個ColumnDefinitions,當頂部網格被調整大小時(與iTunes一樣的程序中的UI非常相似),調整大小。我想單獨的網格的原因是因爲最終,每個網格將是它自己的對象,並將需要拖放屬性。這裏是我寫的Xaml,如果有人想看看我在看什麼。WPF基本綁定
<Canvas Width="400" Height="15" Background="AntiqueWhite">
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Width="400" Name='Maingrid'>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="140" MinWidth="50"/>
<ColumnDefinition Width="116" MinWidth="50"/>
<ColumnDefinition Width="144" MinWidth="50"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="15"/>
</Grid.RowDefinitions>
<GridSplitter Grid.Column="0"
HorizontalAlignment="Right"
VerticalAlignment="Stretch"
Background="Black"
ShowsPreview="True"
Width="2"
/>
<GridSplitter Grid.Column="1"
HorizontalAlignment="Right"
VerticalAlignment="Stretch"
Background="Black"
ShowsPreview="True"
Width="2"
/>
<TextBlock Text="Song" Grid.Column="0" Width="30"/>
<TextBlock Text="Song" Grid.Column="1" Width="30"/>
<TextBlock Text="Song" Grid.Column="2" Width="30"/>
</Grid>
</Canvas>
<Canvas Width="400" Height="15" Background="RosyBrown" Margin="58,168,59,138">
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Width="400">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="140" MinWidth="50"/>
<ColumnDefinition Width="116" MinWidth="50"/>
<ColumnDefinition Width="144" MinWidth="50"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="15"/>
</Grid.RowDefinitions>
<TextBlock Text="Song" Grid.Column="0" Width="30"/>
<TextBlock Text="Song" Grid.Column="1" Width="30"/>
<TextBlock Text="Song" Grid.Column="2" Width="30"/>
</Grid>
</Canvas>
而且作爲最後一點,我已經看了無窮無盡的教程和指南的數據綁定和我17歲的大腦似乎無法環繞它我的頭。如果我能夠理解如何將文本塊綁定到我的C#代碼隱藏中的變量(又名:不在代碼隱藏中設置文本塊的文本屬性,而只是更改字符串的內容),我就能夠變得如此之多更高效。謝謝任何能夠幫助我的人,我知道這個問題已經被問了一百萬次。
你問這裏的兩個問題,@ hosch250已經回答了第一個,雖然我已經(也許是不好)回答第二 – paul 2014-10-08 15:55:06
別擔心,我花了幾天(超過一週?)來理解數據綁定,但是當我理解它時,它實現得非常快。一旦你理解了單向綁定,玩了一段時間的雙向綁定,學習轉換器,你會很好。 – Hosch250 2014-10-08 15:56:56