1.先在Converter命名空间当中,定义转换功能类:

public sealed class BoolToValueConverter : System.Windows.Data.IValueConverter

    {
        public object TrueValue
        {
            get { return trueValue; }
            set { trueValue = value; }
        }
        object trueValue;
        public object FalseValue
        {
            get { return falseValue; }
            set { falseValue = value; }
        }
        object falseValue;
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if (value == null)
                return DependencyProperty.UnsetValue;
            var data = value.GetType().Name;
            if (value.GetType().Name.ToLower().Contains("int")|| value.GetType().Name == "Decimal")
            {
                if (int.Parse(value.ToString()) !=0)
                {
                    return TrueValue;
                }
                else
                {
                    return FalseValue;
                }
            }
            if (bool.TryParse(value.ToString(), out bool
                result))
            {
                if (result)
                    return TrueValue;
                else
                    return FalseValue;
            }
            else if (Enum.TryParse(value.ToString(), out Visibility
                 Enumresult))
            {
                if (Enumresult == Visibility.Visible)
                    return TrueValue;
                else
                    return FalseValue;
            }
            else
            {
                return DependencyProperty.UnsetValue;
            }
        }
        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            return DependencyProperty.UnsetValue;
        }
    }
 
2.引用命名空间
          xmlns:converter="clr-namespace:Converter"
 
3.使用方法:
          在ResourceDictionary当中调用:
          <converter:BoolToValueConverter x:Key="BoolToColorConverter" TrueValue="#3F48CC" FalseValue="#ED1C24"/>
 
          <TextBlock TextWrapping="Wrap" Grid.Column="1" Text="{Binding IsSensitiveArea,Converter={StaticResource BoolToColorConverter}}"/>
 
          在window当中定义和调用:       
    <window.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="pack://application:,,,/Infrastructure;component\Style\Themes\Style.xaml" />
            </ResourceDictionary.MergedDictionaries>
            <converter:BoolToValueConverter x:Key="BoolToValueConverterOnWord" TrueValue="是" FalseValue="否"/>
        </ResourceDictionary>
    </window.Resources>
    
     <TextBlock TextWrapping="Wrap" Grid.Column="1" Text="{Binding IsSensitiveArea,Converter={StaticResource BoolToValueConverterOnWord}}"/>
 

WPF当中StaticResource调用方法的更多相关文章

  1. WPF 绑定StaticResource到控件的方法

    原文:WPF 绑定StaticResource到控件的方法 资源文件内的属性能否直接通过绑定应用到控件?答案是肯定的. 比如,我们要直接把下面的<SolidColorBrush x:Key=&q ...

  2. WPF 判断调用方法堆栈

    原文:WPF 判断调用方法堆栈 版权声明:博客已迁移到 http://lindexi.gitee.io 欢迎访问.如果当前博客图片看不到,请到 http://lindexi.gitee.io 访问博客 ...

  3. WPF入门教程系列(二) 深入剖析WPF Binding的使用方法

    WPF入门教程系列(二) 深入剖析WPF Binding的使用方法 同一个对象(特指System.Windows.DependencyObject的子类)的同一种属性(特指DependencyProp ...

  4. 【ASP.NET Web API教程】3.3 通过WPF应用程序调用Web API(C#)

    原文:[ASP.NET Web API教程]3.3 通过WPF应用程序调用Web API(C#) 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的 ...

  5. C#当中的扩展方法

    先说有用的,c#扩展方法结论: 扩展方法能够向现有类型“添加”方法,而无需创建新的派生类型,重新编译或以其他方式修改原始类型.扩展方法必须是静态方法,可以像实例方法一样进行调用.且调用同名中实际定义的 ...

  6. WPF中TreeView.BringIntoView方法的替代方案

    原文:WPF中TreeView.BringIntoView方法的替代方案 WPF中TreeView.BringIntoView方法的替代方案 周银辉 WPF中TreeView.BringIntoVie ...

  7. SNF快速开发平台--规则引擎在程序当中如何调用

    规则定义完如何在程序当中进行使用呢? 其时很简单,只需要如下代码就可以调用程序: 规则定义: 调用代码: #region 演示2:生成左表数据(规则) POST: /api/DEMO/DemoSing ...

  8. MSP430WARE++的使用3:modbus模块的调用方法

    MSP430WARE++的使用3:modbus模块的调用方法     MSP430WARE是一套基于C++语言的开源的MSP430层次化软件架构,支持多种外设. 本文将介绍modbus模块驱动程序的调 ...

  9. WPF中窗体调用窗体

    在WPF中有时候我们需要在一个窗体中去调用另外的一个窗体,下面给出调用方法. 下面实现在MainWindow中通过点击一个按钮调用另外的一个窗口. 首先创建你要调用的另外一个窗口:点击最上面的项目  ...

随机推荐

  1. wechat 网页版通信全过程

    想要记录总结一下自己在这个小项目中所遇到的坑,以及解决问题的思路. 首先我觉得这个小项目挺有实际市场的,市场上有一定的需求量,这个就是驱动力吧.这个小项目的关键点是wechat网页版通信全过程,讲真挺 ...

  2. c语言可变参

    一.什么是可变参数 在C语言编程中有时会遇到一些参数个数可变的函数,例如printf(),scanf()函数,其函数原型为: int printf(const char* format,…),int ...

  3. HDU 3416 Marriage Match IV (最短路径,网络流,最大流)

    HDU 3416 Marriage Match IV (最短路径,网络流,最大流) Description Do not sincere non-interference. Like that sho ...

  4. Eclipse Jee Oxygen安装svn插件

    转: Eclipse Jee Oxygen安装svn插件 技术标签: eclipse  svn Eclipse Jee Oxygen安装svn插件 入主题: 选择Eclipse->菜单-> ...

  5. 【推荐】使用Ultrapico Expresso学习正则表达式

    Ultrapico Expresso是我工作中经常使用的一个非常强大的正则表达式构建.测试以及代码生成工具.它能够对你构建的正则表达式进行解析.验证,并输出解析结果,提供性能测试工具,支持C#.VB等 ...

  6. Java_myBatis_xml代理写法

    这种开发方式只需要写好Mapper.xml和对应的Interface就可以了. 1.编写Mapper.xml <?xml version="1.0" encoding=&qu ...

  7. 函数和常用模块【day05】:装饰器前戏(二)

    本节内容 嵌套函数 局部作用域和全局作用域的访问顺序 一.嵌套函数 1.定义 在一个函数的函数体内,用def 去声明一个函数,而不是去调用其他函数,称为嵌套函数. 1 2 3 4 5 6 7 8 9 ...

  8. python---ORM之SQLAlchemy(2)外键使用

    import sqlalchemy from sqlalchemy import create_engine from sqlalchemy import Column,String,Integer, ...

  9. 单例设计模式Singleton之懒加载模式(懒汉模式)【原】

    单例设计模式Singleton之懒加载模式(懒汉模式) SingletonLazy.java类 package kingtool; import kingtool.http.IPTool; publi ...

  10. ssh 登录出现Are you sure you want to continue connecting (yes/no)?解决方法

    ssh 登录出现Are you sure you want to continue connecting (yes/no)?解决方法 1,可以使用ssh -o 的参数进行设置例如: ssh -o St ...