WPF 变量绑定实现

最近初学WPF,遇到如控件的内容是动态生成的。这时候就需要变量绑定。

简单写下变量绑定的步骤。

如下面的 例子,TextBlock 的内容是动态的,绑定变量StuName。

<TextBlock x:Name="textBlock1" Grid.Column="7"
    HorizontalAlignment="Left" Margin="68.205,6,0,96"
    Grid.Row="3" TextWrapping="Wrap"
    Text="{Binding Path=StuName}" Width="70"
    Background="#3387FE" Foreground="#FFFFFF"
    Grid.ColumnSpan="3" />

 新建一个Student类并继承。

 public class Student: INotifyPropertyChanged
    {
        private string stuName;

        public string StuName
        {
            get
            {
                return stuName;
            }

            set
            {
                stuName = value;
            }
        }

        public Student()
        {
        }
        public event PropertyChangedEventHandler PropertyChanged;
        private void OnPropertyChanged(string propertyName)
        {
            PropertyChangedEventHandler handler = this.PropertyChanged;
            if (handler != null)
            {
                handler(this, new PropertyChangedEventArgs(propertyName));
            }
        }
    }

 动态赋值的地方

public partial class MainWindow : Window
{
      private Stduent m_student = null;

       public void InitStudent()
       {
            m_student   = new Stduent();
            m_student.StuName = "Zhangsan";
            this.textBlock1.DataContext = m_student;
       }
       public China()
       {
            InitializeComponent();
    InitStudent();
       }
}
时间: 2024-11-19 02:02:52

WPF 变量绑定实现的相关文章

wpf直接绑定xml生成应用程序

目的:在vs2010下用wpf完成一个配置工具,配置文件为xml格式,xml文件作为数据源,直接和wpf前台绑定,生成exe后,运行exe能够加载同路径下的xml配置文件并显示 xml文件在项目中的设置不同: 生成操作为内容,始终复制,可以直接修改exe同目录下的xml文件,xml文件内容的变化能体现到exe启动后的界面,exe大小为16K,xml大小为3K, 生成操作为Resource,始终复制,修改xml文件,exe启动后显示内容没有变化,exe大小为18K,可见Resource时,生成的e

WPF多路绑定

多路绑定实现对数据的计算,XAML: 引用资源所在位置 xmlns:cmlib="clr-namespace:CommonLib;assembly=CommonLib"> <UserControl.Resources> <cmlib:CustomMultiValueConvertor x:Key="MultiValueConverter"/> </UserControl.Resources> <TextBlock Fo

【WPF】最近在学习wpf 的绑定,,

最近在学习wpf 的绑定,,1.简单的说就是版前端和后端用自己的方法给分开了2.baseVm 模型 baseCmd 命令3.命令传参修改的只是界面里的属性,而不修改其它的值4.前端改变后端, 后端改变前端要用的的函数 PropertyChanged 延伸出来的 OnProperyChanged 再延伸出来的 SetProperty5.前端和后端的分离,Interaction triggers in WPFhttp://www.cnblogs.com/lynn-/p/3262658.html <i

oracle = : := 和变量绑定 oracle通配符和运算符

这篇是7788凑的:":="是赋值语句 如: l_name :='sky';..."=" 是判断是否相等. 如: if 1=1 then...":" 是变量绑定 如: if :P_NAME ='sky' then... 变量绑定 是指在sql语句的条件中使用变量而不是常量.比如shared pool里有两条sql语句,select * from tab1 where col1=1;select * from tab1 where col1=2;对

Rust变量绑定

事实上每个非'Hello World'Rust程序都使用"变量绑定".看起来如下: fn main() { let x = 5i;} 在每个例子前都加上fn main() {有点单调乏味,所以以后就省略.如果读者一直跟着学习,请确保编辑main ()函数,不能省略,否则会出错. 在很多语言中,这叫做"变量".但Rust的变量绑定却暗藏玄机.例如,Rust左边的let表达式是一个"模式",而不仅仅是一个变量名.这意味着可以这么做: let (x,

Timestamp 与 Date 变量绑定与Oracle的自动分区

好久没有更新博客了,其实是工作中遇到的很多问题在Google上都能找到答案,也就没有记录下来的必要了.今天主要想聊一下在实际的系统中遇到的Oracle数据库的问题,希望对大家有一点点帮助就好. 我首先描述一下我所遇到的场景:我们的数据库用的是Oracle 11g,我想大家立马就对它的自动分区(Interval)有了基本的认识了,这是一个非常棒的功能,免除了在建表时弄一大堆建Range分区的代码,也免除了以后对数据库进行分区扩充的麻烦.当然利用JOB也是可以完成分区扩展的,但是既然Oracle提供

WPF DataGrid绑定一个组合列

WPF DataGrid绑定一个组合列 前台: <Page.Resources>        <local:InfoConverter x:Key="converter"></local:InfoConverter>    </Page.Resources> <DataGridTextColumn>                        <DataGridTextColumn.Binding>      

wpf样式绑定 行为绑定 事件关联 路由事件实例

代码说明:我要实现一个这样的功能  有三个window窗口  每个窗体有一个label标签  当我修改三个label标签中任意一个字体颜色的时候  其他的label标签字体颜色也变化 首先三个窗体不用贴代码了  直接添加三个就行了 样式绑定: 先添加数据源  代码如下: (注:为了防止propertyName硬编码写死   可以使用CallerMemberName附加属性来获取默认的属性名称 或者使用表达式目录树Expression<Func<T>>的方式来获取) 1 public

WPF TreeView绑定字典集合

1 <TreeView Name="Tree" HorizontalAlignment="Left" Height="269" Width="292" > 2 3 <TreeView.ItemTemplate> 4 <HierarchicalDataTemplate ItemsSource="{Binding Value}"> 5 <StackPanel> 6