winforms相关内容

C# GUI 刷新和异步串口通信

我正在尝试创建一个通过串行端口与硬件通信并将结果报告给 gui 的应用程序. 目前在 GUI 中的移动是由触发 GUI 下一个“页面"的绘制的 KeyEvents 完成的.但是一步(按下键后)我需要绘制新页面并通过串口发送一些命令. 命令发送是通过: port.Write(data, 0, data.Length); 然后我通过等待触发 DataReceivedHandler 来等 ..
发布时间:2022-01-18 14:09:40 C#/.NET

从右到左的工具提示文本c#

使用 WinForms,我有一个字符串,我想将其设置为 ToolTip.该字符串由 Environment.NewLine 的行分隔,如下所示: x.ToolTipText = "aaaaaa" + Environment.NewLine + "bbb"; 当此字符串设置为工具提示时,它看起来: aaaaaabbb 但我的问题是当我希望它本地化为阿拉伯语并且 ToolTip 不支持默认的 ..
发布时间:2022-01-18 14:01:07 C#/.NET

C#:如何将 winforms 按钮的文本绑定到资源

我们有一个资源文件,其中包含许多翻译后的字符串,在我们的应用程序中的不同位置使用.有没有更好的方法来将按钮的文本绑定到某个字符串? 目前我们通常只是在构造函数、Load 事件处理程序或由其中之一调用的方法中执行类似的操作: someButton.Text = CommonTexts.SomeString;someMenuItem.Text = CommonTexts.SomeOtherSt ..
发布时间:2022-01-18 13:51:23 C#/.NET

几年内将桌面应用程序国际化……我们现在应该做什么?

因此,我们确信我们将把我们的产品推向国际,并最终需要将其国际化.在我们进行的过程中,您建议我们进行多少国际化? 我想换句话说,是否有任何国际化现在很容易,但如果我们让代码库成熟可能会更糟,如果我们选择现在开始这样做不会让我们很慢? 使用的技术:C#、WPF、WinForms 解决方案 现在就做好准备,然后再将所有字符串写入代码库本身. 现在之后的一切都为时已晚.现在或永远 ..
发布时间:2022-01-18 13:40:16 其他开发

将变量从主表单传递到输入表单

我有一个简单的问题.我有一个主表单,然后是一个启动表单,我可以从中选择一个新的 3D 模型来生成.从启动表单中选择新的 3D 模型时,我想首先检查我之前处理的模型是否已保存.我只是想使用委托将一个布尔值从主窗体传递给启动窗体,但我似乎无法访问主窗体或其任何变量.我认为这很简单:frmMain myForm = new frmMain();,但是在智能感知中输入 frmMa ..
发布时间:2022-01-18 12:33:36 其他开发

用 C# 编写全局自定义事件

我在这个表单上有一个 winform winform1 和 2 个用户控件 control1 和 control2 现在我想定义一个自定义事件,它在 control1 中引发/触发并在 control2 中接收.该事件应该是全局,而不是直接在 control1 中定义.control2 不应该知道 control1 的存在.该事件也应该由其他控件引发.C# 代码如何?我需要发布者类之类的东西 ..
发布时间:2022-01-18 12:13:28 C#/.NET

在 3 个单独的 WinForms 之间传递数据

在我在 C# WinForms 领域进行编码期间,我遇到过许多在表单之间传递数据的不同方法的实例.我在一个大型代码库上工作——其中一些方法是由其他人编写的,我随后对其进行了扩展,还有一些是我自己编写的.似乎有两种主要的范式,我对这两种范式都进行了相当轻松的编码. 1.) 在实例化或显示子窗体时将父窗体传递给子窗体.例如: ChildForm.Instance = new ChildFor ..
发布时间:2022-01-18 12:02:13 C#/.NET

工具提示上的 AccessViolationException 导致 COMCTL32.dll 出错 - .NET 4.0

我们的 Windows 窗体应用程序存在问题,由于堆栈跟踪指示发生在 ToolTip 控件中的 AccessViolationException 类型的未处理异常而终止. 该错误发生在应用程序的不同时间,我们目前无法可靠地重现它.在这个阶段,它只发生在 Windows 7 的生产环境中,并且只针对某些用户,而不是其他用户——即使在以类似方式使用该应用程序的用户中也是如此.它似乎与机器相关,因 ..
发布时间:2022-01-18 11:47:10 其他开发

无边框形式的 Windows 7 样式 Dropshadow

短版: 目标:在 C# 中的无边框 WinForm 中创建一个深而暗的 Windows 7 阴影 已知的现有解决方案 1: 使用 CreateParams 的简单 XP 样式阴影. 问题:太弱,太轻,太丑. 已知的现有解决方案2:将表单的GDI替换为位图. 问题:失去使用控件的能力,只能用作启动画面. 这篇文章的目标:找到这个问题的中位解决方案或一个更好的解决方 ..
发布时间:2022-01-18 11:41:34 C#/.NET

用win7编写的winforms app在win xp上看起来不一样.为什么?

我在 win 7 上用 winforms (.net 4.0) 编写了一个简单的应用程序.应用程序看起来是我想要的,但是当我在 windows xp 上尝试时,一切看起来都不同. 我创建了一个示例来展示它在 win 7 和 xp 上的外观.我该怎么做才能在两个系统上拥有相同的外观?问题不仅在于背景和字体颜色,还在于控件.在这里,我展示了 numericupdown 的外观,但表格布局也有问题 ..
发布时间:2022-01-18 11:31:50 其他开发

如何创建一个有边框但没有标题栏的表单?(如 Windows 7 上的音量控制)

在 Windows 7 中,音量混合器窗口具有特定的样式,具有厚实、透明的边框,但没有标题栏.如何在 winforms 窗口中重新创建该窗口样式? 我尝试将 Text 设置为 string.Empty,将 ControlBox 设置为 false,这会删除标题栏,但随后边框也会消失: 解决方案 form.Text = string.Empty;form.ControlBox = fa ..
发布时间:2022-01-18 11:00:43 C#/.NET

.NET WinForms - 以编程方式结束当前编辑 - DataGridView

如何以编程方式结束当前单元格编辑而不丢失更改?我将 DataGridView 设置为 EditOnEnter 模式.我在网格上尝试了 EndEdit() 但这会退出当前的编辑. 解决方案 假设这与我对网格所做的非常接近,并且没有看到任何代码,我唯一不同的是遵循对 EndEdit 的调用在 DataGridView 上调用 BindingSource 上的 EndEdit. ..
发布时间:2022-01-18 10:34:30 C#/.NET

如何在 Windows 应用程序中使用 SMTP 服务器向手机发送短信?

我正在使用 C# 开发一个 Windows 应用程序,我想在其中根据某些条件向某些用户发送 SMS.我浏览了许多论坛帖子以“使用 SMTP 服务器发送短信",但没有一个对我有用.在 this 我得到了一些通过 Gmail SMTP 发送短信的线索,但我认为它是特定于运营商的(不确定). 我的代码示例: 试试{MailMessage 消息 = 新的 MailMessage();message ..
发布时间:2022-01-17 15:15:19 C#/.NET

如何从 VB.NET 中的对话框中获取值?

我有一个“frmOptions"表单,其中包含一个名为“txtMyTextValue"的文本框和一个名为“btnSave"的按钮,用于在单击时保存和关闭表单, 然后,当单击主窗体“frmMain"上的按钮“btnOptions"时,我将显示此对话框窗体“frmOptions",如下所示 Private Sub btnOptions_Click(ByVal sender As System. ..
发布时间:2022-01-17 10:58:36 其他开发

.Owner 属性和 ShowDialog(IWin32Window 所有者)之间的区别?

我认为可以通过 .Owner 属性或通过在重载方法 ShowDialog(IWin32Window owner) 中传递所有者来显式设置 winform 的所有者 我无法理解为什么这些方法在处理 MDI 表单时会表现出不同的行为. 我创建了一个 MDIParent 和一个 MDIChild. 我还有一个简单的 winform MyDialogBox,它在加载时显示其所有者. Me ..
发布时间:2022-01-17 10:57:19 C#/.NET