Tag: 控件

为什么控制因其保护级别而无法访问?

我正在尝试从program.cs访问控件的文本属性,并且它说由于受保护的级别而无法访问它。 我该如何解决这个问题?

将子控件的click事件传递给父控件

我有一个Windows窗体,有一个窗格,其中包含另一个派生自Windows窗体的类。 它包含在窗格中作为控件。 它本身包含两个按钮。 我希望子控件的事件一直传递到父窗口。 例如,窗格中的子窗口有一个Cancel按钮,该按钮应该关闭它。 我想要父控件,也就是关闭主窗口,但是如何拦截子控件的按钮单击事件? 我可以修改子控件,但只有在没有其他方法以正确的方式实现这一点时,我宁愿避免它。

C#winform检查控件是否在物理上可见

是否可以确定是否可以看到控件的至少一个像素(通过属性或可能使用事件通知)。 注意:即使其他窗口隐藏了控件,我也不会寻找可以返回true的Visible属性

如何在C#2010.NET中创建控件数组?

我最近从Visual Basic 6迁移到C#2010 .NET。 在Visual Basic 6中,有一个选项可以通过更改它上面的“索引”来设置您想要使用多少个控件数组。 我想知道这是否可能在C#中,如果是这样的话,我将如何使用类来执行此操作: func fc = new func(); 但是在fc中只有一个数组,这可能吗? 更加明确, 当您加载像文本框或用户控件这样的控件时,Visual Basic 6在属性窗口中有一个“索引”选项,如果您将其更改为0,1等等,它将允许您使用全部那些索引,没有加载多个控件50次。 我认为这可能与arraylist有关,但我不完全确定。 谢谢你的帮助。

自定义TabControl以关闭单个选项卡

我的方案如下: 我正在使用C#中的winforms应用程序,它在tabcontrol的主页面内有一个按钮,每次单击它时都会生成另一个tabpage。 每个新标签页都将包含由用户控件定义的布局。 我的问题是: 如何允许用户关闭在运行时动态创建的其中一个选项卡? 我该如何修改tabcontrol本身,以便在每个标签中都有一个小的“X”,用户可以点击该标签以关闭该特定标签? (像Firefox一样) 如果我想使用用户控件内的按钮关闭选项卡,如何将tabcontrol的SelectedIndex属性公开给用户控件?

使用表单resize调整控件大小

我已经阅读了几个堆栈溢出问题,但没有为我的问题找到一个好的解决方案。 每当调整表单大小时,如何调整控件的大小? 当forms变大或变小时,我希望它们变大或变小。 在visual basic中,这很容易用form.Zoom属性(当然不需要调整控件的大小,但解决了我需要的东西)。 不幸的是,这在C#winforms中不可用。 以下是我没有运气的其他一些事情: private void formMain_Resize(object sender, EventArgs e) {/* double scale; this.scaleWidth = (float)this.Width / (float)this.origWidth; this.scaleHeight = (float)this.Height / (float)this.origHeight; if (this.scaleHeight > this.scaleWidth) { scale = this.scaleHeight; } else { scale = this.scaleWidth; } foreach (Control control in this.Controls) { control.Height = (int)(control.Height * this.scaleHeight); control.Width = (int)(control.Width […]

如何使一个事件处理程序适用于C#中的多个控件?

在Visual Basic中我知道该怎么做,但我是C#的新手,所以你们能告诉我如何使用鼠标hover将“同一事件”应用于多个控件? 有一个例子: private void button1, button2, button3, button4_MouseHover(object sender, EventArgs e) { btn.Image = pic }

从另一个线程_and_类更新WinForm控件

我正在制作一个WinForms程序,它需要单独的线程为了可读性和可维护性,我将所有非GUI代码分离到不同的类中。 这个类还“生成”另一个类,它进行一些处理。 但是,我现在遇到的问题是我需要从一个在另一个类中启动的线程更改WinForms控件(将字符串附加到文本框) 我已经四处搜索,并找到了不同线程的解决方案,并且在不同的类中,但不是两者,并且所提供的解决方案似乎不兼容(对我而言) 这可能是最大的“领先”: 如何从另一个类中运行的另一个线程更新UI 类层次结构示例: class WinForm : Form { … Server serv = new Server(); } // Server is in a different thread to winform class Server { … ClientConnection = new ClientConnection(); } // Another new thread is created to run this class class ClientConnection { //Want to modify winform from […]

如何在C#中进行自定义控件?

所以我正在开发一个像IDE一样的C#程序。 问题是,我是通过一个富文本框来实现的,自定义语法高亮显示是超级低效的。 我想知道是否有办法使自定义控件类似于富文本框(甚至基于一个),然后以更简单的方式构建语法高亮… 那么,我该如何制作自定义控件呢? 如果你是超级好的,那么你就指出了一个很好的教程方向!

将控制绘制到内存(位图)

是否可以在不绘制屏幕的情况下将wpf控件绘制到内存(Bitmap)? 我找到了一个如何保存到Bitmap的示例,但它仅在窗口中绘制窗口时才有效。 BitmapImage bitmap = new BitmapImage(); RenderTargetBitmap renderTarget = new RenderTargetBitmap((int)canvaspad.Width, (int)canvaspad.Height, 96, 96, System.Windows.Media.PixelFormats.Default); renderTarget.Render(canvaspad);