예제 #1
0
        /// <summary>
        /// Sets elements visibility based on actual result status.
        /// </summary>
        /// <param name="value">Result status of result.</param>
        /// <param name="targetType">The type of the binding target property.</param>
        /// <param name="parameter">The converter parameter to use.</param>
        /// <param name="culture">The culture to use in the converter.</param>
        /// <returns>Returns Visibility.Visible and Visibility.Collapsed for various items in context menu based on current result status.</returns>
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            ResultBasicInfo.ResultStatus result = (ResultBasicInfo.ResultStatus)value;
            switch (parameter.ToString())
            {
            case "Invert":
                switch (result)
                {
                case ResultBasicInfo.ResultStatus.NotReadyToSend:
                    return(Visibility.Collapsed);

                case ResultBasicInfo.ResultStatus.Sent:
                    return(Visibility.Visible);

                case ResultBasicInfo.ResultStatus.ReadyToSend:
                    return(Visibility.Collapsed);
                }
                break;

            default:
                switch (result)
                {
                case ResultBasicInfo.ResultStatus.NotReadyToSend:
                    return(Visibility.Visible);

                case ResultBasicInfo.ResultStatus.Sent:
                    return(Visibility.Collapsed);

                case ResultBasicInfo.ResultStatus.ReadyToSend:
                    return(Visibility.Visible);
                }
                break;
            }
            return(null);
        }
예제 #2
0
        /// <summary>
        /// Enables/disables elements in context menu based on actual result status.
        /// </summary>
        /// <param name="value">Result status of result.</param>
        /// <param name="targetType">The type of the binding target property.</param>
        /// <param name="parameter">The converter parameter to use.</param>
        /// <param name="culture">The culture to use in the converter.</param>
        /// <returns>Returns TRUE or FALSE for various items in context menu based on current result status.</returns>
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            ResultBasicInfo.ResultStatus result = (ResultBasicInfo.ResultStatus)value;
            switch ((string)parameter)
            {
            case "ToSend":
                switch (result)
                {
                case ResultBasicInfo.ResultStatus.NotReadyToSend:
                    return(false);

                case ResultBasicInfo.ResultStatus.Sent:
                    return(false);

                case ResultBasicInfo.ResultStatus.ReadyToSend:
                    return(true);
                }
                break;

            case "ToEdit":
                switch (result)
                {
                case ResultBasicInfo.ResultStatus.NotReadyToSend:
                    return(true);

                case ResultBasicInfo.ResultStatus.Sent:
                    return(false);

                case ResultBasicInfo.ResultStatus.ReadyToSend:
                    return(true);
                }
                break;

            case "ToImage":
                switch (result)
                {
                case ResultBasicInfo.ResultStatus.NotReadyToSend:
                    return(new ImageBrush()
                    {
                        ImageSource = new BitmapImage(new Uri(@"/ndgwp7;component/View/icons/NotReadyToSendIcon.png", UriKind.Relative)), Stretch = Stretch.Fill
                    });

                case ResultBasicInfo.ResultStatus.Sent:
                    return(new ImageBrush()
                    {
                        ImageSource = new BitmapImage(new Uri(@"/ndgwp7;component/View/icons/SentIcon.png", UriKind.Relative)), Stretch = Stretch.Fill
                    });

                case ResultBasicInfo.ResultStatus.ReadyToSend:
                    return(new ImageBrush()
                    {
                        ImageSource = new BitmapImage(new Uri(@"/ndgwp7;component/View/icons/ReadyToSendIcon.png", UriKind.Relative)), Stretch = Stretch.Fill
                    });
                }
                break;
            }
            return(null);
        }