首页 > 其他分享 >WPF简单的数据绑定示例

WPF简单的数据绑定示例

时间:2024-11-20 10:30:07浏览次数:1  
标签:UserName userName string 示例 void 绑定 private WPF public

    public partial class index : INotifyPropertyChanged
    {
        public index()
        {
            InitializeComponent();
            DataContext = this;
        }
        private string _userName;
        public string UserName
        {
            get => _userName;
            set
            {
                if (_userName != value)
                {
                    _userName = value;
                    OnPropertyChanged(nameof(UserName));

                }
            }
        }

        public event PropertyChangedEventHandler PropertyChanged;
        protected void OnPropertyChanged(string propertyName)
        {
            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
        }


       

        private void ValidateUserName()
        {
            // 可以在这里添加验证逻辑
            if (string.IsNullOrEmpty(UserName))
            {
                Growl.Error("值不能为空!请重新输入!");
            }
            else
            {
                Growl.Success("用户输入的值为:"+UserName);
            }
        }
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            ValidateUserName();
        }
    }
}

ui:

<Window
    x:Class="WpfApp1.index"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:hc="https://handyorg.github.io/handycontrol"
    xmlns:local="clr-namespace:WpfApp1"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    Title="index"
    Width="800"
    Height="450"
    mc:Ignorable="d">
    <Grid>
        <StackPanel Width="200">
            <TextBox
                Margin="0,0,0,10"
                hc:InfoElement.Necessary="True"
                hc:InfoElement.Placeholder="请输入用户名"
                hc:InfoElement.Title="用户"
                hc:InfoElement.TitlePlacement="Left"
                Style="{StaticResource TextBoxExtend}"
                Text="{Binding UserName, Mode=TwoWay}" />

            <!--  密码  -->
            <!--
            <PasswordBox
                x:Name="txtPassword"
                Margin="0,0,0,20"
                hc:InfoElement.Necessary="True"
                hc:InfoElement.Placeholder="请输入密码"
                hc:InfoElement.ShowClearButton="True"
                hc:InfoElement.Title="密码"
                hc:InfoElement.TitlePlacement="Left"
                Style="{StaticResource PasswordBoxExtend}" />-->

            <!--  登录按钮  -->
            <Button
                Width="150"
                Height="30"
                Margin="20,0,0,0"
                Padding="0"
                Click="Button_Click"
                Content="登录"
                FontFamily="/WpfApp1;component/Themes/font/#iconfont"
                FontSize="20"
                Style="{StaticResource ButtonSuccess}" />
        </StackPanel>
    </Grid>
</Window>

``

标签:UserName,userName,string,示例,void,绑定,private,WPF,public
From: https://www.cnblogs.com/gyl0812/p/18556354

相关文章

  • 界面控件DevExpress WPF中文教程:网格视图数据布局的列和卡片字段
    DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。无论是Office办公软件的衍伸产品,还是以数据为中心......
  • C#-WPF 常见类型转换方法(持续更新)
    目录一、普通类型转换1、Convert类2、Parse(转String)3、TryParse(转String)4、ToString(转String)5、int转double 6、自定义类型的显示/隐式转换二、byte[]转ImageSource方法一方法二一、普通类型转换1、Convert类提供了一种安全的方式来执行类型转换,可处理n......
  • WPF ListBox implement autoscroll via behavior extension and SelectedItem
    publicclassListBoxAutoScrollBehavior:Behavior<ListBox>{protectedoverridevoidOnAttached(){AssociatedObject.SelectionChanged+=AssociatedObject_SelectionChanged;base.OnAttached();}privatevoidAs......
  • SMARTFORMS函数调用完整示例:打印工厂物料信息
    首先规划想要打印的效果和信息,这里示例的是想要打印物料数据库里面的信息。①对相关数据表创建表结构:SE11 注意数据类型,数量quan需要参考类型:创建表结构:②创建一个REPORT程序,并对相关的字段、变量、内表进行声明,并写一个SELECTION界面和一些基础的取数等,具体代码如下:DATA......
  • 将 WPF 嵌入到 MFC 中,无法响应键盘输入
    在将WPF窗口嵌入到MFC窗口中中提到,可以将WPF嵌入到MFC窗口中,但遗留了一个没有发现的问题,WPF界面,无法响应键盘的输入。示例源码已经在https://gitee.com/Jasongrass/DemoPark/tree/master/Code/Embed_WPF_to_MFC/MFCMerge......
  • 达梦数据库迁移示例路径
    官方文档:https://eco.dameng.com/document/dm/zh-cn/faq/faq-db-changes.html博客:https://mp.weixin.qq.com/s/9ggRIiHdWz3LOIhfvS84mw迁移数据库实例路径迁移目标路径/usr/local/app/dmdbms/data/DAMENG/db-data/DAMENG步骤停止数据库服务进入达梦数据库......
  • echarts 图标示例集合
     {"color":["#33DFFF","#2F6EE6"],"grid":{"left":0,"top":0,"right":0,"bottom":0,"containLabel":fal......
  • .net core微服务 async task job示例
     Execute函数publicasyncTaskExecute(IJobExecutionContextcontext){Stopwatch_time=newStopwatch();_time.Start();stringstrRe="开始时间:"+DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss");stringerrmsg=strin......
  • 如何在WPF中嵌入其它程序
    在WPF中嵌入其它程序,这里提供两种方案 一、使用WindowsFormHost使用步骤如下1、添加WindowsFormsIntegration和System.Windows.Forms引用  2、在界面上放置WindowsFormHost和System.Windows.Forms.Panel1<Grid>2<WindowsFormsHost>3<winform:Pa......
  • quartz .net8微服务避免dbcontext异常示例
     调整program.cs里注册QuartzJobService,去除掉原有框架内的QuartzCore文件夹中的Factorymiddlejob等方法//注册QuartzJobServicebuilder.Services.AddQuartz(q=>{varjobKey=newJobKey("Jobs");q.AddJob<InterAutoTicketing>(opts=>opts.WithIdentity(j......