2013-01-16 4 views
1

나는 내가 UpdateSourceTrigger 설정이 무엇인지 테스트하기 위해 저를 필요로하는 사용자 지정 컨트롤을 가지고 TEXTCOLUMNDataGridColumn 바인딩 용 코드에서 UpdateSourceTrigger 설정을 가져 오는 방법은 무엇입니까?

<DataGrid ItemsSource="{Binding Path=Dvm.Data}" 
       Name="GrdName" 
       AutoGenerateColumns="False" 
       Margin="5" 
       SelectionMode="Single"> 
     <DataGrid.Columns> 
      <DataGridTextColumn Header="Column 1" 
           Binding="{Binding Path=Col1, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True}" 
           Width="*"/> 
     </DataGrid.Columns> 
    </DataGrid> 

이있는 DataGrid 컨트롤을 가지고,하지만 난 문제가 코드에서 해당 액세스하는 데.

BindingOperations.GetBindingExpression(GrdName.Columns[0], DataGridTextColumn.BindingProperty); 

을하지만, BindingProperty 실제로는 종속성 속성이 아니므로 나는 할 수 없습니다 :이 같은 일을하고 싶습니다. 누구든지 내가 그 UpdateSourceTrigger 설정을 얻을 수 있도록 그 열에 대한 바인딩 속성에 대한 바인딩 표현을 얻는 방법에 대해 알고 있나요?

덕분에, 매트

답변

2

Binding 속성은 그래서 당신은 일반 공용 속성을 사용하여 액세스해야하는 DependancyProperty 없습니다. Binding 속성이 DataGridTextColumn 인 경우 캐스팅 비트를 BindingBase으로 입력하면 Binding으로 캐스팅해야 UpdateSourceTrigger이됩니다. DataGridTextColumn 이후 그리고 당신이 그것을 조금 더 일반적인 만드는 것과 캐스트 할 수 DataGridBoundColumn에서 파생

는 다음과 같이 작동합니다 :

var columnUpdateSourceTrigger = ((GrdName.Columns[0] as DataGridBoundColumn).Binding as Binding).UpdateSourceTrigger; 
관련 문제