private void SampleTable_Changed(object sender, PropertyChangedEventArgs e) { try { BuildTableOptonsModel optionModel = sender.To <BuildTableOptonsModel>(); DataItemModel dataModel = optionModel.TablesSource.FirstOrDefault(tn => tn.ItemKey.ParseToString() == optionModel.TableName); ErdCanvasModel canvas = this.allErdCanvasModels.FirstOrDefault(c => c.ModelSegmentControlName == dataModel.Tag.ParseToString()); this.selectedTable = canvas.SegmentTables.FirstOrDefault(t => t.TableName == optionModel.TableName); foreach (BuildOption tabItem in this.uxTabs.Items) { tabItem.SelectedTable = this.selectedTable; } } catch (Exception err) { MessageBox.Show(err.Message); } }
private void SetSampleTableOptions() { BuildTableOptonsModel sampleTables = new BuildTableOptonsModel(); List <DataItemModel> result = new List <DataItemModel>(); foreach (ErdCanvasModel canvas in this.allErdCanvasModels) { result.AddRange(canvas.SegmentTables .Select(t => new DataItemModel { DisplayValue = t.TableName, ItemKey = t.TableName, Tag = canvas.ModelSegmentControlName })); } sampleTables.TablesSource = result.ToArray(); this.uxSampleTables.Items.Add(sampleTables); this.selectedTable = this.allErdCanvasModels[0].SegmentTables[0]; sampleTables.TableName = this.selectedTable.TableName; sampleTables.PropertyChanged += this.SampleTable_Changed; }