Winform巧用窗体设计完成弹窗数值绑定-以重命名弹窗为例
场景
在WIinform中有一种场景就是对文件进行重命名时需要获取原来的名字并填充窗体中的输入框,
然后在点击保存时还要能获取弹窗中输入框的内容。
比如点击重命名时弹窗

点击确认时获取输入框内容。

注:
博客主页:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
新增一个窗体页面,设计如下

进入到代码页面
首先添加一个文件名字段用来存储重命名的文件名
private string _filename = String.Empty; //保存要设置的文件名
然后新增文件名属性用来获取窗体中编辑框输入的文件名
public string FileName
{
get
{
return this.textEdit1.EditValue.ToString();
}
}
为了实现在窗体一打开时就能获取原来的文件名,在窗体的load方法中,将文件名字段赋值给窗体中输入框。
private void FrmReName_Load(object sender, EventArgs e)
{
this.textEdit1.EditValue = this._filename;
}
然后为了在重命名后能获取到新的名字,在窗体的构造方法中对文件名字段进行赋值
public FrmReName(string name)
{
this._filename = name;
InitializeComponent();
}
然后编写确认与取消按钮的点击事件
private void btnOK_Click(object sender, EventArgs e)
{
this.DialogResult = System.Windows.Forms.DialogResult.OK;
} private void btnCancel_Click(object sender, EventArgs e)
{
this.DialogResult = System.Windows.Forms.DialogResult.Cancel;
}
完整窗体代码
public partial class FrmReName : DevExpress.XtraEditors.XtraForm
{
private string _filename = String.Empty; //保存要设置的文件名
public FrmReName(string name)
{
this._filename = name;
InitializeComponent();
} public string FileName
{
get
{
return this.textEdit1.EditValue.ToString();
}
}
private void btnOK_Click(object sender, EventArgs e)
{
this.DialogResult = System.Windows.Forms.DialogResult.OK;
} private void btnCancel_Click(object sender, EventArgs e)
{
this.DialogResult = System.Windows.Forms.DialogResult.Cancel;
} private void FrmReName_Load(object sender, EventArgs e)
{
this.textEdit1.EditValue = this._filename;
}
}
调用示例
//获取当前文件名
string oldName = Path.GetFileNameWithoutExtension(strIdValue); Dialog.FrmReName frmReName = new FrmReName(oldName);
frmReName.StartPosition = FormStartPosition.CenterScreen;
DialogResult result = frmReName.ShowDialog();
if (result == DialogResult.OK)
{
//刷入框新设置的文件名
string newName = frmReName.FileName;
}
Winform巧用窗体设计完成弹窗数值绑定-以重命名弹窗为例的更多相关文章
- C#--WinForm项目主窗体设计
主窗体基本设置 大小.颜色.去边框.出现的位置 Panel控件 背景图.颜色.布局: Label标签 文本.字体.背景颜色.布局 按钮 布局.文本.字体颜色.背景色. 底部panel绑定控件边框.颜色 ...
- C# winform窗体设计-通过条件查询数据
在winform 数据库设计中,有时候需要通过条件查询对应的数据,并且将数据显示在文本框(or 富文本框)中,下面,小编将讲述通过一个条件: 首先,我们需要对数据库建立连接,并且执行数据库命令,在此之 ...
- C#WinForm窗体内Panel容器中嵌入子窗体、程序主窗体设计例子
C#WinForm父级窗体内Panel容器中嵌入子窗体.程序主窗体设计例子 在项目开发中经常遇到父级窗体嵌入子窗体所以写了一个例子程序,顺便大概划分了下界面模块和配色,不足之处还望指点 主窗体窗体采用 ...
- C# winform窗体设计-查询单个值
查询单个值主要用于对成绩最低分,最高分,学生总数,学生性别等信息的统计 在查询单个值的时候用到了ExecuteScalar方法,连接以及语句方面,以及思路和对数据的增删改差不多 下面请看一段代码: s ...
- Winform开发框架主界面设计展示
做了好多年Winform的程序的开发,主窗口的界面设计一般都要求做的更好一些,可以根据不同的系统功能模块进行归类整合,能使客户迅速寻找到相关功能的同时,也能感觉到整体性的美观大方,因此主窗口的界面设计 ...
- C#自定义Winform无边框窗体
C#自定义Winform无边框窗体 在实际项目中,WinForm窗体或者控件不能满足要求,所以就需要自己设计窗体等,当然设计界面可以用的东西很多,例如WPF.或者一些第三方的库等.本例中将采用WinF ...
- winform打开子窗体后,在子窗体中刷新父窗体,或者关闭子窗体刷新父窗体
winform打开子窗体后,在子窗体中刷新父窗体,或者关闭子窗体刷新父窗体,搜集了几个方法,列举如下: 一 . 所有权法 父窗体,名称为“fuForm”,在父窗体中有个公共刷新方法,也就是窗体数据初始 ...
- WinForm中一个窗体调用另一个窗体
[转] WinForm中一个窗体调用另一个窗体的控件和事件的方法(附带源码) //如果想打开一个 Form2 的窗体类,只需要: Form2 form = new Form2(); //有没有参数得看 ...
- C#WinForm无边框窗体移动方法、模仿鼠标单击标题栏移动窗体位置
C#WinForm无边框窗体移动方法.模仿鼠标单击标题栏移动窗体位置 这里介绍俩种办法 方法一:直接通过修改窗体位置从而达到移动窗体的效果 方法二:直接伪装发送单击任务栏消息,让应用程序误以为单击任务 ...
随机推荐
- Leetcode题解 - 贪心算法部分简单题目代码+思路(860、944、1005、1029、1046、1217、1221)
leetcode真的是一个学习阅读理解的好地方 860. 柠檬水找零 """ 因为用户支付的只会有5.10.20 对于10元的用户必须找一个5 对于20元的用户可以找(三 ...
- Blog 须知
转载 转载需通过博主同意方可 代码格式 博主遵循 \(Google\) 代码格式,代码满足以下规范: 字符数 每行代码必需不超过 80 字符 缩进 缩进不使用制表符,而是 2 个空格缩进 函数 函数左 ...
- 使用GDAL/GEOS求面特征的并集
存在这样一个示例的矢量文件,包含了两个重叠的面特征: 一个很常见的需求是求取这个矢量中所有面元素的并集,通过GDAL/GEOS很容易实现这个功能,具体代码如下: #include <iostre ...
- Cesium专栏-Billboard加载Gif图片
Cesium 是一款面向三维地球和地图的,世界级的JavaScript开源产品.它提供了基于JavaScript语言的开发包,方便用户快速搭建一款零插件的虚拟地球Web应用,并在性能,精度,渲染质量以 ...
- oracle中add_months()函数总结
今天对add_months函数进行简单总结一下: add_months 函数主要是对日期函数进行操作,在数据查询的过程中进行日期的按月增加,其形式为: add_months(date,int);其中第 ...
- 【每天一题】LeetCode 0028. 字符串匹配
开源地址:https://github.com/jiauzhang/algorithms 题目描述 * https://leetcode-cn.com/problems/implement-strst ...
- Oracle模糊查询CONCAT参数个数无效
在使用MyBatis操作Oracle数据库的时候,写模糊查询突然发现原本在MySql中正确的代码,在Oracle中报错,参数个数无效 <if test="empId!=null and ...
- netcore 2.2 封装 AutoMapper
在上篇中我们通过创建一个类并继承autoMapper的Profile类 public class Mappings : Profile { public Mappings() { CreateMap& ...
- [转]UiPath Invoke Code
本文转自:https://dotnetbasic.com/2019/08/uipath-invoke-code.html We will learn step by step tutorial for ...
- 45-管理 Machine
用 docker-machine 创建 machine 的过程很简洁,非常适合多主机环境.除此之外,Docker Machine 也提供了一些子命令方便对 machine 进行管理.其中最常用的就是无 ...