Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用概念——用户控件、界面_C#_Asp.net_.net_Conceptual - Fatal编程技术网

C# 使用概念——用户控件、界面

C# 使用概念——用户控件、界面,c#,asp.net,.net,conceptual,C#,Asp.net,.net,Conceptual,这是一个关于两件事的问题:我什么时候使用[a]用户控件[b]界面?或者,考虑到所有的可能性,上述物品的最佳用途是什么 我为什么要问 UserControl:我试图创建一个包含一个ASPX页面和多个ASPX页面的网站——这是一个主+事务要求——但在与ASPX页面斗争之后,我现在不得不在ASPX中重新创建它,因为ASPX页面变得相当复杂——多个输入、数据元素等等。(大约500个数据元素分散在11个ascx页面上)。所以问题是——使用ascx页面的最佳位置是什么 接口:与上面的场景相同——控制页面上的

这是一个关于两件事的问题:我什么时候使用[a]用户控件[b]界面?或者,考虑到所有的可能性,上述物品的最佳用途是什么

我为什么要问

UserControl:我试图创建一个包含一个ASPX页面和多个ASPX页面的网站——这是一个主+事务要求——但在与ASPX页面斗争之后,我现在不得不在ASPX中重新创建它,因为ASPX页面变得相当复杂——多个输入、数据元素等等。(大约500个数据元素分散在11个ascx页面上)。所以问题是——使用ascx页面的最佳位置是什么

接口:与上面的场景相同——控制页面上的数据(保存、放弃、更新等)我曾在ASPX页面上使用过控件,但失败得很惨,所以我尝试了接口,但在这方面我也没有取得多大进展,所以我回到了在所有ASPX页面上使用重复控件的基本方法上……不用说,这很乏味


我想知道,从概念上讲,我做错了什么!

你似乎有点混淆了界面和用户控件,它们彼此完全不同。有许多文章详细描述了它们。但我想告诉你我是如何使用它们的

用户控件:我使用用户控件主要用于用户界面封装。例如,如果我有一些文本框、标签、少数下拉列表和面板,我必须编写代码来处理它们。例如,我有一个下拉列表,根据它的值,我必须启用或禁用一些功能。我还必须执行一些v验证。我可以在网页中这样做,但最好是将它们封装在用户控件中

a) 我的代码不会弄乱我的网页代码, b) 它封装在一个控件中 c) 例如,控件的函数将集体操作控件及其代码

我的网页中的代码将非常干净,易于阅读,而且总体而言,代码更易于维护。此外,通过用户控件,可以在许多页面中使用相同的功能,而无需再次编写代码,甚至无需复制和粘贴代码

接口:1我在特殊情况下使用接口。例如,有一个要求,控件必须与它所包含的页面交互。通常程序员将页面键入实际类并使用它。我所做的是创建两个接口。一个是页面实现的,另一个是控件实现的。通过这些接口,它们将相互交互,并且依赖关系不是硬编码的。这意味着实现页面所需接口的任何控件都将实现该接口,并且页面可以开始与该控件交互。
从技术上讲C++实现了多重继承,许多现代语言不允许多继承,这样就解决了它们具有这些接口的问题,因为一个类可以实现任意数量的接口,从而给人带来多重继承的错觉。我的弱点确实是接口,并且已经与之斗争了一段时间。在我到达那里之前,我确实有一些路要走!!!再次感谢!