예제 #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);
        }
예제 #2
0
        private UserControl constructDateRangeControl(FieldDataSelectionBuilder.SearchSpecification.RestrictionSpecification restriction)
        {
            UserControl restrictionControl;
            var         drControl = new DateRangeControl();

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

            drControl.SetBinding(DateRangeControl.TitleProperty, titleBinding);

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

            drControl.SetBinding(DateRangeControl.StartDateProperty, startDateBinding);

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

            drControl.SetBinding(DateRangeControl.EndDateProperty, endDateBinding);

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

            drControl.SetBinding(DateRangeControl.IsCheckedProperty, checkedBinding);

            drControl.From  = OptionsAccess.Language.getLanguageString(1231);
            drControl.Until = OptionsAccess.Language.getLanguageString(1232);

            restrictionControl = drControl;
            return(restrictionControl);
        }