编辑自定义页面

aw48

活跃的成员
已加入
2013年2月9日
留言内容
35
地点
德国
编程经验
10+
你好
确保我要描述的不是标题中所说的,但没有任何想法
我创建了一个小型应用程序,该应用程序仅创建图形形式的页面或表单。
目前,我仅创建表,定义绘制为位图的行数和列数。
现在我要编辑"fields"这张桌子选择一个字段并添加一些文本很容易。但是有许多编辑选项,最后我会做很多工作。
我的问题:存在类似的东西,这将节省很多编程时间。
由于英语不是我的母语,所以我不知道如何在google中查找它。
谁能帮我 ?
有空询问其他信息。
提前致谢
弗朗兹
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,501
地点
悉尼,澳大利亚
编程经验
10+
目前尚不清楚您真正要的是什么。据我所知,您应该创建自己的自定义控件。所有控件只是一个继承的类 控制 然后添加自己的成员并进行绘制是适当的。我了解英语不是您的母语,但我认为需要一个更好的解释,也许是一两个截图。
 

跳伞

工作人员
已加入
2019年4月6日
留言内容
2,497
地点
弗吉尼亚州切萨皮克
编程经验
10+
由于OP正在发布在GDI +子论坛中,因此很有可能他还使用WinForms。

真正的问题是,当OP要求能够在字段中单击并添加文本或其他编辑选项的行为时,该编辑是在设计时还是在运行时进行。

如果在运行时,那么在我看来,最简单的方法就是使用不带列标题和行标题的DataGridView。 DGV已经具有基本的行和列。使用默认的文本列类型可让用户输入文本,而其他内置类型则允许其他控件。 OP还可以为需要特殊编辑或渲染的其他内容编写其他自定义列类型。如果所有单元格都是自由格式的(例如第1行第1列可以包含文本,然后第2行第1列可以包含图像,然后第3行第1列可以包含播放按钮来播放音乐),那么作者将是强制编写自定义的omni类型的列以适应此情况。这比编写只接受一种类型的自定义列要困难得多。

除非表的行和列非常简单,并且用户不需要滚动和调整大小,否则DGV应该节省大量时间。

现在,另一方面,如果OP希望在设计时而不是在运行时进行所有编辑,那么就该确保安装Visual Studio SDK并遵循编写自定义UserControl的路径了。您不需要SDK来编写自定义控件,但是如果您希望能够在设计时与Windows窗体设计器中的控件进行交互,就需要它。
 

aw48

活跃的成员
已加入
2013年2月9日
留言内容
35
地点
德国
编程经验
10+
感谢您的答复,对于您的延迟,我们深表歉意。我必须对应用程序的布局呈现部分进行一些小的更改。
随附的是10行3列的小页面布局。记住这些只是线条,我要编辑的字段就像是gridview。我不是在寻求编程帮助,我知道我会怎么做,但我也知道这需要做很多工作,尤其是当我想用键盘控制编辑时。
也许存在一个库,您所要做的就是创建一个项目集合,然后根据图形设计将属性添加到每个项目中。所有这些都应该在运行时完成。
但是我不知道我要寻找什么。就像是"图形设计的项目生成器" (omg)
 

附件

  • 10线.jpg
    10线.jpg
    9.3 KB · 观看次数: 8

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,501
地点
悉尼,澳大利亚
编程经验
10+
你为什么不只用一个 数据网格视图?它的设计使其默认情况下不包含任何子控件,并且仅绘制所有数据,然后在用户编辑单元格时创建并嵌入一个子控件。
 

aw48

活跃的成员
已加入
2013年2月9日
留言内容
35
地点
德国
编程经验
10+
布局渲染应用程序不是新的。最初,它只是为了创建一个页面布局并打印出来。
我做的第一件事是绘制一些自动图文集,以便可以对行进行编号。
然后想到了使其可编辑的想法,因此我可以将其用于扫描的每种表单,例如bancform,您所要做的就是定义编辑字段。
除了一些小问题,我现在相处得很好,但这非常耗时。这就是为什么我一直在寻找一些接收位图或项目结构并自己进行所有编辑的应用程序的原因。
也许以后我会再提一些问题。
问候
 
最佳 底部