public List <WDetailSingleRowViewModel> CustomizeHeader(PropertyInfo property, string display_name, bool is_editable, object source) { WDetailSingleRowViewModel file_row = new WDetailSingleRowViewModel(display_name); FileReferenceControl fileref = new FileReferenceControl(); fileref.IsEnabled = is_editable; fileref.FieldName = property.Name; FileReference thing = property.GetValue(source) as FileReference; Binding tbind = new Binding("FilePath") { Source = thing, Mode = BindingMode.TwoWay, UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged }; fileref.SetBinding(FileReferenceControl.FileNameProperty, tbind); file_row.PropertyControl = fileref; return(new List <WDetailSingleRowViewModel>() { file_row }); }
private void HandleItemSelected(TreeNode selectedTreeNode) { ReferencedFileSave rfs = null; if (selectedTreeNode != null) { rfs = selectedTreeNode.Tag as ReferencedFileSave; } if (rfs != null) { if (control == null) { viewModel = new FileReferenceViewModel(); control = new FileReferenceControl(); control.DataContext = viewModel; AddToTab(PluginManager.CenterTab, control, "Referenced Files"); } else { AddTab(); } } else { base.RemoveTab(); } if (viewModel != null) { viewModel.ReferencedFileSave = rfs; } }