c# - 如何在更改表单大小时更改文本框的位置

标签 c# winforms

我有一个文本框,当在列表框中单击数据时,它会提供创建者/更新者的信息以及数据库中数据的创建/更新日期。文本框位于表单的右侧底部。

当用户通过拖动表单修改大小时,它会更改信息文本框的位置

是否可以使用 SizeChanged 事件移动文本框以及如何移动?(通过传递文本更改)

我已经尝试过,但我做不到。我将 TextChanged 分配给 SizeChanged 事件。它有效!

但是必须有一种方法可以在不使用 TextChanged 事件的情况下完成此操作。

这是我的代码,它可以工作,但我不满意。

private void infoTxt_TextChanged  (object sender, EventArgs e)
{
    infoTxt.Top = (this.Height - this.Top)  + infoTxt.Height* 3/4 ;
    infoTxt.Left = this.Width - (infoTxt.Width) ;
}

最佳答案

将文本框锚定到表单的底部和右侧,如下所示:

// Anchor the text box to the bottom right corner of the form
infoTxt.Anchor = (AnchorStyles.Bottom | AnchorStyles.Right);

关于c# - 如何在更改表单大小时更改文本框的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19280954/

相关文章:

c# - Entity Framework 距离查询

c# - ExecuteSqlCommand 与 SqlQuery 有什么区别?什么时候做数据库访问?

c# - 将异常写入 Windows 日志文件

c# - 如何从另一个类访问 form1 变量?

c# - 将表从一个数据库复制到同一服务器上的另一个数据库

c# - 将 IWICStream/IStream 从非托管 C++ DLL 返回到托管 C# 并读取它

c# - 集合被修改;枚举操作可能无法在 VS WinForms Designer 中执行

c# - 从以编程方式创建的按钮事件调用函数

winforms - 如何实现ScintillaNET列编辑模式

c# - 时间转换为客户端时间c#