public FrameworkElement CreateWidgetControl(IDiagram widget, ContextMenu contextMenu) { var viewModel = widget as TicketListerWidgetViewModel; var ret = new TicketListerControl { DataContext = viewModel, ContextMenu = contextMenu }; var heightBinding = new Binding("Height") { Source = viewModel, Mode = BindingMode.TwoWay }; var widthBinding = new Binding("Width") { Source = viewModel, Mode = BindingMode.TwoWay }; var xBinding = new Binding("X") { Source = viewModel, Mode = BindingMode.TwoWay }; var yBinding = new Binding("Y") { Source = viewModel, Mode = BindingMode.TwoWay }; var fontNameBinding = new Binding("FontName") { Source = viewModel }; var transformBinding = new Binding("RenderTransform") { Source = viewModel, Mode = BindingMode.OneWay }; var scaleTransformBinding = new Binding("ScaleTransform") { Source = viewModel, Mode = BindingMode.OneWay }; ret.SetBinding(InkCanvas.LeftProperty, xBinding); ret.SetBinding(InkCanvas.TopProperty, yBinding); ret.SetBinding(FrameworkElement.HeightProperty, heightBinding); ret.SetBinding(FrameworkElement.WidthProperty, widthBinding); ret.SetBinding(UIElement.RenderTransformProperty, transformBinding); ret.SetBinding(Control.FontFamilyProperty, fontNameBinding); ret.ListBox.SetBinding(FrameworkElement.LayoutTransformProperty, scaleTransformBinding); return(ret); }
public FrameworkElement CreateWidgetControl(IDiagram widget, ContextMenu contextMenu) { var viewModel = widget as TicketListerWidgetViewModel; var ret = new TicketListerControl { DataContext = viewModel, ContextMenu = contextMenu }; var heightBinding = new Binding("Height") { Source = viewModel, Mode = BindingMode.TwoWay }; var widthBinding = new Binding("Width") { Source = viewModel, Mode = BindingMode.TwoWay }; var xBinding = new Binding("X") { Source = viewModel, Mode = BindingMode.TwoWay }; var yBinding = new Binding("Y") { Source = viewModel, Mode = BindingMode.TwoWay }; var fontNameBinding = new Binding("FontName") { Source = viewModel }; var transformBinding = new Binding("RenderTransform") { Source = viewModel, Mode = BindingMode.OneWay }; ret.SetBinding(InkCanvas.LeftProperty, xBinding); ret.SetBinding(InkCanvas.TopProperty, yBinding); ret.SetBinding(FrameworkElement.HeightProperty, heightBinding); ret.SetBinding(FrameworkElement.WidthProperty, widthBinding); ret.SetBinding(UIElement.RenderTransformProperty, transformBinding); ret.SetBinding(Control.FontFamilyProperty, fontNameBinding); return ret; }