2015-07-21 45 views
1

我想將行爲附加到(Component One)數據網格行。將行爲應用到WPF DataGrid行

問題是:我無法進入實際行的DataContext。在風格我的數據上下文是數據網格..我怎麼才能到行的數據上下文?

<c1:C1DataGrid.RowStyle> 
    <Style TargetType="c1:DataGridRowPresenter"> 
      <Setter Property="ui:DataGridRowHierarchyBehavior.IsExpanded" Value="{Binding IsExpanded, RelativeSource=}" /> 
    </Style> 
</c1:C1DataGrid.RowStyle> 

我知道如何使用RelativeSource「起牀」可視化樹 -
但如何「越來越下降」可以工作,我沒有頭緒..

任何提示非常感謝!

+0

你是否厭倦了與「ElementName =」<你的組件名稱>「? – Ugur

回答

3

要到該行的DataItem的,你需要在下面的方式來使用的RelativeSource在綁定:

<c1:C1DataGrid.RowStyle> 
    <Style TargetType="{x:Type c1:DataGridRowPresenter}"> 
     <Setter Property="Background" Value="{Binding RelativeSource={RelativeSource Self}, Path=Row.DataItem.Background}"></Setter> 
    </Style> 
</c1:C1DataGrid.RowStyle> 

,我用了背景屬性爲例。

+0

真棒,歡呼! – cacau

+0

很高興我可以幫助:) – AbdiasM