외부 관계가있는 일부 셀에는 일부 ComboBoxes가 포함 된 WPF DataGrid가 있습니다. 그러나 이는 수백 개의 ComboBoxes가 있음을 의미합니다. 너무 오래 걸리는 시간에로드됩니다. 우리가하고 싶은 것은 ComboBox가로드 될 때까지 레이블을로드하는 것입니다. 우리는 TextBox를 사용하여 쉽게이 작업을 수행 할 수 있습니다.DataView가있는 WPF DataGrid에서 클릭 할 때까지 ComboBox를 레이블로 표시하려는 경우
Google의 콤보 상자가 작동하고 사용자가 여러 표시 값 (예 : {Car, Dog, Cat}) 중에서 선택하여 열의 외래 키 값을 변경할 수 있습니다. 그러나 사용자가 라벨을 클릭하기 전에 레이블에 외래 키 값이 표시됩니다 (예 : {1, 2, 3}).
우리가 할 수있는 것에 대한 아이디어가 있습니까? 어떤 도움을 가장 높이 평가!
<DataGridTemplateColumn Header="Column Name" SortMemberPath="Column Name">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Label Content="{Binding Path=DataViewBehindColumnName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<ComboBox
DataContext="{DynamicResource ResourceKey=ViewModel}"
ItemsSource="{Binding Path=ReferenceTableName,
Converter={StaticResource dataViewToListConverter}}"
DisplayMemberPath="ReferenceTableDisplayNamesColumn"
SelectedValuePath="ReferenceTablePrimaryKeyColumn"
SelectedValue="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type DataGridRow}},
Path=Item[DataViewBehindColumnName]}"
/>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
종류의 안부 복어
이렇게하면 모든 외부 관계에 구현할 필요가없는 방법이 있습니까? 우리는 테이블 당 15 개의 외래 키를 가정합니다 ... 우리는 응용 프로그램에서 40 개의 테이블을 편집 할 수있게하려고합니다 - 유지 관리의 악몽입니까? – Fugu
@ Fugu : 나는이 질문에 답하기에 충분한 정보가 없습니다. 나는 몇몇 OR-Wrapper가 당신을 위해 그런 일을 할 수 있다고 생각합니다. 필자의 경우 필자는 필기 도구를 사용하여 그러한 뷰 모델을 생성합니다. OR 매퍼의 문맥에 질문을 올리면 답변을 얻을 수 있습니다. 하나만 사용하고 데이터베이스 나 다른 소스에 직접 액세스하는 경우 추상적 수준에서 해결을 수행하는 도우미 클래스에 대해 생각하십시오. – HCL
많은 감사. 우리는 객체 관계형을 수행하지 않습니다. 일부 데이터 제출 요구 사항으로 인해 DataSet이 뒤에 있고 컨트롤을 바인딩 할 DataView가 있습니다. DataView 필터를 변경하는 명령입니다. DataView 대신 목록이 필요한 컨트롤 용 변환기. – Fugu