2012-02-22 5 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>