2014-03-04 70 views
0

我對你所有友好的XAML專家提出了一個簡單的問題。我有一個包含一些行標題的數據網格,默認的水平對齊是居中。我想要的只是將此對齊方式更改爲左側。我已經嘗試了下面的代碼,但該劑量似乎工作。是否因爲內容由文本塊組成?如果是這樣,我該如何改變它的路線?我試圖改變標題的背景,它似乎工作得很好。數據網格行標題內容的水平對齊

風格:

<Style x:Key="DataGridRowHeaderStyle" TargetType="sdk:DataGridRowHeader">   
    <Setter Property="HorizontalContentAlignment" Value="Left"/> 
</Style> 

控制:

<sdk:DataGrid x:Name="CheeseWeightsColumnStatsDataGrid"       
       ItemsSource="{Binding CheeseWeightColumnStats}" IsReadOnly="True"    
       AutoGenerateColumns="False" 
       HeadersVisibility="Row" 
       LoadingRow="CheeseWeightsColumnStatsDataGrid_OnLoadingRow" 
       RowHeaderStyle="{StaticResource DataGridRowHeaderStyle}"> 
</sdk:DataGrid> 
+0

我會想到,標題內的所有內容都將與您使用的代碼保持一致。但是,也許你必須設置實際文本塊的Horizo​​ntrolAlignment,如果這是在代碼中創建的:'textBlock.TextAlignment = TextAlignment.Left;' – DNKROZ

回答

0

我想創建一個模板的行頭,並將其綁定到所顯示的行中的類的屬性:

<sdk:DataGrid.RowHeaderTemplate> 
    <DataTemplate> 
     <TextBlock Text="{Binding HeaderText}" HorizontalAlignment="Left"/> 
    </DataTemplate> 
    </sdk:DataGrid.RowHeaderTemplate> 
+1

非常感謝您的回覆。出於某種原因,可能是因爲它是Silverlight應用程序,沒有名爲RowHeaderTemplate的屬性。我錯過了什麼嗎? – Steean