Beispiel #1
0
        private UserControl constructNameValueControl(FieldDataSelectionBuilder.SearchSpecification.RestrictionSpecification restriction)
        {
            var nvControl = new NameValueControl();

            var titleBinding = new Binding(PropertyHelper.ExtractPropertyName(() => restriction.TitleID))
            {
                Source    = restriction,
                Converter = this.LanguageStringFromIDConverter,
                Mode      = BindingMode.OneWay
            };

            nvControl.SetBinding(NameValueControl.TitleProperty, titleBinding);

            var valueBinding = new Binding(PropertyHelper.ExtractPropertyName(() => restriction.Value))
            {
                Source = restriction,
                Mode   = BindingMode.OneWayToSource,
                UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged
            };

            nvControl.SetBinding(NameValueControl.ValueProperty, valueBinding);

            var checkedBinding = new Binding(PropertyHelper.ExtractPropertyName(() => restriction.IsEnabled))
            {
                Mode   = BindingMode.OneWayToSource,
                Source = restriction,
                UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged
            };

            nvControl.SetBinding(NameValueControl.IsCheckedProperty, checkedBinding);

            return(nvControl);
        }
        private UserControl constructNameValueControl(FieldDataSelectionBuilder.SearchSpecification.RestrictionSpecification restriction)
        {
            var nvControl = new NameValueControl();

            var titleBinding = new Binding(PropertyHelper.ExtractPropertyName(() => restriction.TitleID))
            {
                Source = restriction,
                Converter = this.LanguageStringFromIDConverter,
                Mode = BindingMode.OneWay
            };
            nvControl.SetBinding(NameValueControl.TitleProperty, titleBinding);

            var valueBinding = new Binding(PropertyHelper.ExtractPropertyName(() => restriction.Value))
            {
                Source = restriction,
                Mode = BindingMode.OneWayToSource,
                UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged
            };
            nvControl.SetBinding(NameValueControl.ValueProperty, valueBinding);

            var checkedBinding = new Binding(PropertyHelper.ExtractPropertyName(() => restriction.IsEnabled))
            {
                Mode = BindingMode.OneWayToSource,
                Source = restriction,
                UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged
            };
            nvControl.SetBinding(NameValueControl.IsCheckedProperty, checkedBinding);

            return nvControl;
        }