【原创】有关Silverlight中“DataGrid中级联动态绑定父/子ComboBox ”的示例。
生活随笔
收集整理的這篇文章主要介紹了
【原创】有关Silverlight中“DataGrid中级联动态绑定父/子ComboBox ”的示例。
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
嘗試了很多種方案,由于Datagrid動態生成的每行父子comboBox的Name的不確定性,給父ComboBox綁定事件中獲取 子ComboBox很難根據Name獲取到。
花了不少時間和公司同事商討,最終方案如下:
注:父子combobox分別代表: 主行業/子行業
private void CurrentRowIndusrtylist_SelectionChanged(object sender, SelectionChangedEventArgs e){ComboBox combobox = sender as ComboBox;//獲取另一個conbox控件CurrentRowIndusrtylist = (sender as ComboBox);if (CurrentRowIndusrtylist != null){ DataGridCell dg = (DataGridCell)(CurrentRowIndusrtylist.Parent);//關鍵用法if (DataGridRow.GetRowContainingElement(dg) != null){ CurrentRowIndusrtySublist = this.dataGrid9.Columns[3].GetCellContent(DataGridRow.GetRowContainingElement(dg)) as ComboBox;//關鍵用法if (CurrentRowIndusrtySublist != null) BindSubIndusrtyCodes();//動態去綁定子combobox}}}private void BindSubIndusrtyCodes(){if (CurrentRowIndusrtylist.SelectedItem != null){var unitIndusrtyItem = CurrentRowIndusrtylist.SelectedItem as System_IndustryCodes;_db.Load(_db.GetIndustryCodesQuery(), op =>{CurrentRowIndusrtySublist.Items.Clear();CurrentRowIndusrtySublist.Items.Add(new System_IndustryCodes { ID = -1, IndustryCodes = "--請選擇子行業--" });IEnumerable<System_IndustryCodes> tempsubList = op.Entities.Where(q => q.ParentCodeID == unitIndusrtyItem.ID);foreach (var temp in tempsubList){if (temp == null)return;CurrentRowIndusrtySublist.Items.Add(new System_IndustryCodes { ID = temp.ID, IndustryCodes = temp.IndustryCodes });}CurrentRowIndusrtySublist.DisplayMemberPath = "IndustryCodes";CurrentRowIndusrtySublist.SelectedValuePath = "ID";CurrentRowIndusrtySublist.UpdateLayout();if (CurrentRowIndusrtySublist.Items.Count == 1)CurrentRowIndusrtySublist.SelectedIndex = 0;elseCurrentRowIndusrtySublist.SelectedIndex = 1;//if (_OldSubindustryId != 0)//CurrentRowIndusrtySublist.SelectedItem = (from q in CurrentRowIndusrtySublist.Items where (q as System_IndustryCodes).ID == _OldSubindustryId select q).FirstOrDefault();//默認選擇項-子行業}, null);}}?
最終效果:
轉載于:https://www.cnblogs.com/x-poior/p/4897353.html
總結
以上是生活随笔為你收集整理的【原创】有关Silverlight中“DataGrid中级联动态绑定父/子ComboBox ”的示例。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端面试题整理(js)
- 下一篇: 手脱FSG 2.0 - bart/xt