WPF CodeBehind 草稿

 
 


var column1 = new DataGridTextColumn(); 
column1.Header = "Hello World"; 
column1.Binding = new Binding("firstName"); 
var column2 = new DataGridTemplateColumn(); 
column2.Header = "Template Column";
var template = new DataTemplate { DataType = typeof(string) }; 
var stackPanelFactory = new FrameworkElementFactory(typeof(StackPanel)); 
stackPanelFactory.SetValue(StackPanel.OrientationProperty, Orientation.Vertical); 
var title = new FrameworkElementFactory(typeof(TextBlock)); 
title.SetBinding(TextBlock.TextProperty, new Binding("hi2")); 
title.SetValue(TextBlock.ForegroundProperty, Brushes.Orange); 
//title.SetValue(TextBlock.BackgroundProperty, "{Binding Path=hi2, Converter={StaticResource ColorConvert}}"); 
var b1 = new Binding(); 
b1.Converter = new ColorConvert2(); 
b1.ConverterParameter = column2.Header; 
b1.Path = new PropertyPath("hi2"); 
title.SetValue(TextBlock.BackgroundProperty, b1); 
var b2 = new Binding(); 
b2.Converter = new TextConvert1(); 
b2.Path = new PropertyPath("hi2"); 
title.SetValue(TextBlock.TextProperty, b2); 
stackPanelFactory.AppendChild(title); 
template.VisualTree = stackPanelFactory; 
column2.CellTemplate = template; 
datagridTest.Columns.Add(column1); 
datagridTest.Columns.Add(column2); 
datagridTest.Items.Add(new { hi2 = "打倒!", firstName = "Hi My FirstName" }); 
datagridTest.Items.Add(new { hi2 = "普通模式", firstName = "2Hi My FirstName" });

Converter
  [ValueConversion(typeof(string), typeof(string))]
    public class TextConvert1 : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {                      
            string strValue = value.ToString();

            if (strValue.Contains("fuxk"))
                return "含有关键字根据法律不予显示";

            return strValue;          
        }
        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            return "";
        }
    }

 
 
 

转载于:https://www.cnblogs.com/norsd/archive/2013/05/10/6359412.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值