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 "";
        }
    }



   

posted on 2013-05-10 15:22  norsd  阅读(186)  评论(0编辑  收藏  举报

导航