首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

wpf listview不同列数据绑定,该怎么解决

2012-08-29 
wpf listview不同列数据绑定我想在listview中显示3列数据Data1, Data2, Sum其中SumData1+Data2,我想用绑

wpf listview不同列数据绑定
我想在listview中显示3列数据Data1, Data2, Sum
其中Sum=Data1+Data2,我想用绑定的方式实现,我是这样做的:
声明元数据类型:

C# code
// Data类型,包含Data1和Data2属性,用来绑定public class MyData : INotifyPropertyChanged    {        public event PropertyChangedEventHandler PropertyChanged;        private decimal data1;        private decimal data2;        public decimal Data1        {            get { return data1; }            set            {                data1 = value;                if (PropertyChanged != null)                    this.PropertyChanged.Invoke(this, new PropertyChangedEventArgs("Data1"));            }        }        public decimal Data2        {            get { return data2; }            set            {                data2 = value;                if (PropertyChanged != null)                    this.PropertyChanged.Invoke(this, new PropertyChangedEventArgs("Data2"));            }        }    }// MyDatas数据类型,用于标示集合    public class MyDatas : ObservableCollection<MyData>    { }// XAML中代码// 设置资源    <Window.Resources>        <local:MyDatas x:Key="MyDatas"/>       </Window.Resources>// 显示数据    <StackPanel>        <Button Click="Button_Click">add people</Button>        <Button Click="Button_Click_1">change comany</Button>        <ListView ItemsSource="{StaticResource MyDatas}">            <ListView.View>                <GridView>                    <GridViewColumn Header="Data1" DisplayMemberBinding="{Binding Data1}"/>                    <GridViewColumn Header="Data2" DisplayMemberBinding="{Binding Data2}"/>                    <GridViewColumn Header="Sum" DisplayMemberBinding="{Binding ???}"/>                </GridView>            </ListView.View>        </ListView>    </StackPanel>

对于Data1和Data2的Binding已经实现,但是如何让Sum列自动绑定到Data1+Data2?也就是代码中'???'部分应该如何填写?
如果用Converter,那么假如我只binding了Data1 再用一个Converter那么Data2变化的时候明显不会触发Converter,Sum也不会变,请问大家应该怎么解决呢?
真心求教,请大家指点,非常感谢!

[解决办法]
用MultiBinding组合多个Binding

热点排行