Tag: winforms

如果我替换PictureBox控件中的图像,我应该先处理原始图像吗? .Net Winforms

继我的问题之后,如果我更换图片框中的图像,我应该首先处理原始图像吗? 或者,这种情况怎么样: Dim bm As New Bitmap(32,32) bm = New Bitmap(32,32) bm = New Bitmap(32,32) bm = New Bitmap(32,32) bm只需要在最后处理,还是应该在每次重新创建之前处理? 谢谢大家的答案。 在我身上有一个很大的疏忽。 我知道一个控制部门负责处理它的孩子,但我没想到如果我更换它就应该处理一个旧图像。

如何从资源对象获取资源名称?

假设我在我的资源文件夹中添加了一个exe。 现在我怎么能得到资源的名称(甚至链接的完整路径,以便我仍然可以拥有文件名)作为字符串? 从Properties.Resources.myApp我如何获得string “myApp” 。 ToString()不起作用。 如果嵌入文件以获取名称很重要,我可以。 编辑:我的问题不是专门获取exe资源的名称。 但是那个通用的方法给了我资源的名称! 例如,如果我的资源是位图图像怎么办? 我需要从Properties.Resources.Lily打印“Lily”。 怎么做到这一点? ToString无论如何都不会工作。

我可以为C#Windows应用程序拖放function选择自定义映像吗?

我正在编写一个小项目,我想利用拖放function来简化最终用户的一些操作。 为了使应用程序更具吸引力,我想显示被拖动的对象。 我已经找到了WPF的一些资源,但是我不知道任何WPF,所以对于这个单一任务来说,对于整个主题的讨论变得有点困难。 我想知道如何使用“常规”C#Windows窗体来完成此操作。 到目前为止,我发现的所有拖放教程都只是谈论掉落效果,它只是几个图标的预设。 在这个项目之后,WPF听起来像是我想要学习的东西。

收据打印的中心文本

我有一些代码,我用它来打印C#的收据。 下面的代码打印正常,但我正在努力调整左右中心的文本, Graphics graphics = e.Graphics; Font font = new Font(“Courier New”, 10); float fontHeight = font.GetHeight(); int startX = 0; int startY = 0; int Offset = 0; graphics.DrawString(“Welcome to MSST”, new Font(“Courier New”, 14), new SolidBrush(Color.Black), startX, startY + Offset); Offset = Offset + 20; graphics.DrawString(“Recept No :” + receptno + 1, new […]

C#.NET多行TextBox,具有相同宽度的字符

如果您输入多行文本框,我该怎么做呢? ABCDE & ABCDE 所以大E 直接位于小e之下。 如果它们在同一行,我希望它们垂直排列。 另外,使用winforms

是否可以在datagridview中切换行和列?

我在DataTable中有10条数据记录,其中包含3个字段“Foo”,“Bar”和“Baz”。 如果我将它连接到DataGridView,我会看到10行和3列,列标题显示字段的名称。 我想知道反转行和列是多么容易,因此使用相同的数据我最终得到3行和10列,字段名称显示在行标题中。 我可以手工做一些事情,比如重写OnPaint方法并将字段名称直接绘制到行标题单元格中,但我正在寻找更自动化的东西。 同样,有一个建议是手动交换值,但除非我将所有值都设置为字符串,否则这不会起作用。 数据表中的3列 – 类型为int,float和string的Foo,Bar和Baz不会转置。 即使我管理了所有这些手动更改,我的数据网格也有CheckBox列,ComboBox列 – 没有这样的行对应存在 – 没有CheckBox行或ComboBox行。 我目前只需要告诉编译器“添加一个ComboBoxColumn”,我必须重新编写,以便每个单元格都是单独生成的。 理想情况下,我想要一个TransposableDataGridView,它暴露了DataGridView的所有function,并附加了一个bool属性“Transposed”。 这样我就可以完全保留我的所有代码 – 除了网格的类型之外,我不需要改变任何东西。 如果不存在这样的情况,我可能只需要去写它。 (应该只花一年时间!:)

Panel中的MouseEnter和MouseLeave事件及其子控件

我有一个包含子控件的Panel 。 如果我处理Panel的MouseEnter和MouseLeave事件及其子项的MouseEnter和MouseLeave事件, MouseLeave以下顺序引发事件: Panel.MouseEnter Panel.MouseLeave Child1.MouseEnter Child1.MouseLeave Panel.MouseEnter Panel.MouseLeave 但我需要以下顺序: Panel.MouseEnter Child1.MouseEnter Child1.MouseLeave Panel.MouseLeave 那可能吗?

如何更改现有事件处理程序的名称?

在WinForms中,如果将方法名称(例如button1_Click )更改为其他名称,则它将不再起作用。 我发现这很奇怪,因为在控制台应用程序中,据我记得你可以根据需要命名方法。 我正在努力了解正在发生的事情。 如何更改这些方法的名称 (例如button1_Click )?

阻止Winforms Designer为inheritance的控件生成属性值

我有一个自定义DataGridView ,让我们这样说: public MyGridView : DataGridView { public MyGridView() { BackgroundColor = Color.Red; } } 现在,当我在使用设计器的项目中使用此控件时,由于某种原因,感觉还需要在designer.cs文件中设置该属性。 所以在设计器文件中,我会: this.MyGridView1.BackgroundColor = System.Drawing.Color.FromArgb((byte)(int)255, (byte)(int)0, (byte)(int)0); 我的问题是,它阻止我能够改变我的MyGridView的构造函数中的颜色,而不必遍历我以前控制的所有表单并在每个实例中更改它,使我的自定义控件无效。 有些属性提供虚拟getter,这没有问题,但大多数属性都没有。 如何防止设计人员生成此代码?

WinForms TabControl – 添加新标签按钮(+)

如何在Windows窗体应用程序中向TabControl添加+按钮。 这是WPF的答案。 但是我想在WinForms应用程序中使用它?