2015-11-20 60 views
0

我有一個XAML代碼:圖像網格屬性在XAML-C#

<Grid RenderTransformOrigin="0.501,0.481"> 
    <Grid.Background> 
     <ImageBrush Stretch="Fill" ImageSource="Assets/bg.png"/> 
    </Grid.Background> 
    <Grid HorizontalAlignment="Left" Height="670" Margin="50,40,0,0" Width="670" Background="#FFFFDF1A"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition/> 
      <ColumnDefinition/> 
      <ColumnDefinition/> 
      <ColumnDefinition/> 
      <ColumnDefinition/> 
      <ColumnDefinition/> 
      <ColumnDefinition/> 
      <ColumnDefinition/> 
     </Grid.ColumnDefinitions> 
     <Grid.RowDefinitions> 
      <RowDefinition/> 
      <RowDefinition/> 
      <RowDefinition/> 
      <RowDefinition/> 
      <RowDefinition/> 
      <RowDefinition/> 
      <RowDefinition/> 
      <RowDefinition/> 
     </Grid.RowDefinitions> 
     <Image x:Name="bimage0" x:Uid="1" HorizontalAlignment="Left" Height="83.75" Width="83.75" Source="Assets/Chessman/bPawn.png" Stretch="Fill" Grid.Column="7" Grid.Row="6"/> 
     <Image x:Name="bimage1" x:Uid="1" HorizontalAlignment="Left" Height="83.75" Width="83.75" Source="Assets/Chessman/bPawn.png" Stretch="Fill" Grid.Column="6" Grid.Row="6"/> 

我想X:UID和Grid.Row & Grid.Column屬性在C#部分中的每個圖像標籤。

我該怎麼做?

有嗎?

回答

1

當然。調用行和列的靜態方法Grid,並從圖像對象本身獲取Uid屬性。

int row = Grid.GetRow(bimage0); 
int col = Grid.GetColumn(bimage0); 
string uid = bimage0.Uid; 
+0

非常感謝,行列技巧效果很好。 但是關於bimage0.Uid,我嘗試過,但它說: '圖像'不包含'UID'的定義和沒有擴展方法'UID'接受類型'圖像'的第一個參數可以找到(是你錯過了使用指令或程序集引用?) 有什麼建議? –

+0

@MehrdadKamali,我只是在這裏試過,它工作得很好。您可以嘗試清理並重建您的解決方案。 'Image'繼承自'UIElement',它具有'Uid'屬性,所以除非你沒有使用正確的'Image'控件,否則不應該有任何問題。 – WasGoodDone

+0

其實......它在WPF應用程序中工作正常......但我試圖構建一個通用應用程序,並且.Uid屬性甚至不存在於C#部分中。爲什麼? –