Wpf DataGrid :تغيير XML مجال ملزمة في وقت التشغيل
-
03-07-2019 - |
سؤال
انا تطوير WPF تحكم المستخدم لعرض أجزاء من ملفات XML.أنا في محاولة لجعل المستخدم التحكم مرنة بحيث يمكن تعيين عناوين الأعمدة والبيانات الميدانية روابط من خارج السيطرة.
لقد وجدت أنني يمكن بسهولة تغيير عناوين الأعمدة ، ولكن حين البرمجية التالية ويبدو أن الوعد SertMemberPath لا يغير مجال ملزمة
public void ChangeColumnDefinitions ( List<XmlGridColumnDefinition> columns )
{
int columnnum = 0;
foreach ( XmlGridColumnDefinition column in columns )
{
this.datagrid.Columns[columnnum].Header = column.Heading;
this.datagrid.Columns[columnnum].SortMemberPath = string.Format ( "Element[{0}].Value", column.FieldName );
++columnnum;
}
}
المحلول
بعد النظر في جميع أنحاء أكثر وجدت هذا السؤال والجواب من قبل @Generic_Error على ذلك.انا عدلت الكود قليلا هنا ما جاء مع هذا الذي أستطيع أن تخصيص أكثر من ذلك.
public void ChangeColumnDefinitions ( IEnumerable<XmlGridColumnDefinition> columns )
{
this.datagrid.Columns.Clear ();
foreach ( var column in columns )
{
DataGridTextColumn coldef = new DataGridTextColumn
{
Header = column.Heading,
Binding = new Binding ( string.Format ( "Element[{0}].Value", column.FieldName ) )
};
this.datagrid.Columns.Add ( coldef );
}
}
لا تنتمي إلى StackOverflow