Tag: 用户控件

如何在设计时隐藏一些默认控件属性(C#)?

我有一个自定义控件。 它inheritance自System.Windows.Forms.Control ,并具有我添加的几个新属性。 是否可以显示我的属性(例如TextOn和TextOff)而不是默认的“Text”属性。 我的控制工作正常,我只想解除属性窗口的混乱。

制作索引控制数组?

是否有C#索引控制数组? 我想设置一个“按钮数组”,例如5个按钮,它们只使用一个事件处理程序来处理所有这5个控件的索引(就像VB6一样)。 另外,我必须为这5个按钮中的每个按钮写一个额外的事件处理程序。 如果我有100个按钮,我需要100个事件处理程序? 我的意思是这样的: TextBox1[i].Text=”Example”; 它可以使我更容易使用控制数组进行编码。 现在我已经看到,C#至少在用户控件上没有可见的数组function,在用户控件上没有“index”属性。 所以我猜C#没有控制数组,或者我必须通过已知名称调用每个元素。 我不得不在for循环100递增值中给出100个TextBox,而是写: TextBox1.Text = Value1; TextBox2.Text = Value2; … … TextBox100.Text = Value100; 还有很多工作+所有这100个事件处理程序,每个处理器额外增加一个TextBox。

如何在WPF应用程序中放置自定义Windows窗体控件?

作为一个短期解决方案,我试图将Windows窗体’usercontrol’堵塞到WPF应用程序中。 我在WPF应用程序视图中看到我可以向项目添加“自定义窗体控件”,它会创建一个空的自定义控件,但我无法弄清楚如何添加它。 理想情况下,我想知道如何从我编译的Windows窗体用户控件中获取.dll并将其粘贴到WPF应用程序中,或将用户控件导入WPF应用程序。 谢谢,山姆

如何让智能手机像滚动winforms触摸屏应用程序(滚动面板)

在网上搜索完文章后,我想出了一个基于winforms的触摸屏应用程序的设计,需要像滚动一样的智能手机。 该应用程序本身将在平板电脑或触摸屏桌面上运行。 我把我要滚动的所有内容放在面板上。 将autoscroll设置为true(将显示滚动条) 现在将整个面板放在一个组框中 缩小combobox,直到隐藏滚动条(视觉上隐藏,不可见= false) 现在我被困在的有趣部分。 我想我必须在面板上处理mousedown,mouseup和mousemove以设置自动滚动位置,以便当有人触摸面板并拖动时,它会滚动魔术。 请帮助填写以下方法存根中的几行代码。 autoscrollposition上的msdn doc非常混乱,因为它返回负数,但需要设置为abs,而不是。 Point mouseDownPoint; Point mouseUpPoint; Point mouseDragPoint; private void myPanel_MouseDown(object sender, MouseEventArgs e) { this.mouseDownPoint = e.Location; Console.WriteLine(“Mouse down at {0}”, e.location); } private void myPanel_MouseUp(object sender, MouseEventArgs e) { this.mouseUpPoint = e.Location; this.mouseDownPoint = new Point(); //will set for IsEmpty check Console.WriteLine(“Mouse Up […]

无法修改表达式,因为它不是变量

我正在尝试在Windows窗体上获取一个UserControl(其上有一个网格)来resize。 以下代码是我在表单中的内容。 我得到的行为是当我把它变大时控件被resize。 但它并没有缩小。 我做错了什么(或)我错过了什么? private void AdjustGrid() { ZoomControl.Location = new Point(5, 5); ZoomControl.Size = new Size(this.Width – 15, this.Height – 75); } void zoomform_Resize(object sender, EventArgs e) { AdjustGrid(); } 现在用户控件具有以下代码: //Resize the grid that the UserControl has on it private void NameValuePropertyBag_Resize(object sender, EventArgs e) { grdNameValueProperties.Location = new Point(4,4); grdNameValueProperties.Size = […]

如何从用户控件访问页面控件?

有没有办法从用户控件访问页面控件。 我的页面中有一些控件,我想从用户控件访问这些控件。

VS 2010 – 使用Designer打开用户控件/表单时出错

C#,VS2010,WinForm应用程序: 有时我确实遇到了打开一些控件/表单时收到错误消息的问题。 所有代码都编译并且应用程序正常运行。 打开设计师的控件给了我: 设计器加载器没有提供根组件,但没有说明原因。 根据我的经验,我可以说,我的代码中通常会出现一些未正确初始化的内容,例如某个属性未设置,在运行时以某种方式可用,但在设计人员打开时则不然。 唯一的问题是,根本原因很难找到。 问:当设计人员在Visual Studio 2010中打开我的组件时,是否有机会以某种方式使用调试器? 这将有很大帮助,解决问题很可能只需几分钟。 备注:为了清楚说明,我知道如何使用调试器;-),我只是不知道如何告诉VS2010的设计人员在调试模式下打开我的控件。 截至2010年9月2日,新增: 谢谢你的帮助。 基本上它是描述如何执行它的MSDN Library文章。 我已设法设置并运行第二个实例(没有太多要理解如何做到这一点)。 它只在我的情况下失败,因为第二个VS2010实例(调试设计时)无法找到我的自定义控件的符号。 我在Debugging / symbols下手动添加了符号。 没有结果,仍然“因为缺少符号而不会打破断点” 顺便说一句,使用这种方法,从符号加载(通过模块窗口)中排除一些东西是有帮助的,因为这将安全很多时间。 现在,如果必须弄清楚如何解决符号,那么我可以解决这个问题…..

C#缩放UserControl内容以匹配用户Dpi /字体大小

如何让OwnerDrawn UserControl尊重用户dpi(96/120 / xxx)和/或font-size(普通,大,超大)? 有些人建议在Graphics对象上使用DpiX和DpiY属性,但这似乎对我控制中的任何东西都没有(即它们总是设置为96,无论我选择哪种字体大小或dpi)。 StackOverflow上还有另一个类似的问题,它建议使用AutoScale属性,但建议的解决方案也没有做任何事情。 除了依赖WPF之外,在.NET中没有办法做到这一点吗?

C#generics usercontrol

我想定义以下控件: public partial class ObjectSelectorControl : UserControl where T : class 问题是设计师无法解决这个问题。 这个问题有解决方法吗?

asp.net在回发后动态添加用户控件保存值

这是我的问题。 我有一个usercontrol,我希望允许用户使用按钮单击添加任意数量的实例(每次单击一个按钮,我想将另一个用户控件实例添加到Panel)。 它第一次工作正常,但每个额外的回发删除所有添加的控件。 我跟踪用户添加的用户控件的数量没有问题,但我如何确保它们保持在回发之前的状态? 我已经阅读了一些关于使用SaveViewState和LoadViewState的人的post,但我找不到任何例子。 我最大的问题是确保每个用户控件的所有文本框和下拉列表在每个回发后都保持填充相同的文本/选定值/数据 提前谢谢,本