2012-02-22 26 views
2

組合框元素要開始自動化ID,我使用了自動組合框的單個元素的方法如下:XAML - 在DataGridComboBoxColumn

<ComboBox.ItemContainerStyle> 
    <Style TargetType="ComboBoxItem"> 
     <Setter Property="AutomationProperties.AutomationId" 
       Value="{Binding ProviderName}" /> 
    </Style> 
</ComboBox.ItemContainerStyle> 

ProviderName綁定到組合框的DisplayMemberPath財產。

我的問題是當試圖修改DataGridComboBoxColumn時,ItemContainerStyle似乎不可用,因此包含在組合框中的元素也具有自動化ID。

有沒有人遇到過這樣做的方法?

我還在玩弄不同的想法,所以如果我遇到任何有意義的結果,我會發布它們。提前致謝。

回答

1

經過一番嘗試,我設法通過設置EditingElementStyle來實現它。

這裏的XAML:

<DataGridComboBoxColumn.EditingElementStyle> 
    <Style TargetType="{x:Type ComboBox}"> 
     <Setter Property="ItemContainerStyle"> 
      <Setter.Value> 
       <Style TargetType="ComboBoxItem"> 
        <Setter Property="AutomationProperties.AutomationId" 
          Value="{Binding ProviderName}" /> 
       </Style> 
      </Setter.Value> 
     </Setter> 
    </Style> 
</DataGridComboBoxColumn.EditingElementStyle>