我们可以将两个部分类链接到一个 ascx 页面吗?
我浏览了一些链接,但找不到合适的解决方案。例如,假设我有文件,例如
Collection.ascx.cs 和 Collection.Search.cs
与 Collection.ascx
我有像按钮单击事件这样的事件,它是否可以放在部分类中,因为这样做会使方法不可用。
我的意图是处理部分类中的按钮单击事件和下拉更改事件。
是的,在 WebApplication 中,它是 .aspx(网页)和 .ascx(用户控件)的默认属性。
默认情况下,这些文件带有两个 .cs 文件,将部分类中的代码分开(文件名.aspx.designer.cs 和文件名.aspx.cs 具有相同的部分类)
您还可以添加更多 .cs 文件来扩展这些部分类定义。
但是在网站上,它不会工作,对于 aspx 或 ascx。
是的,部分类的 C# 编译器规则不会因为它的 ASP.NET 而改变。只要确保你的命名空间和类名匹配,源文件不必是ascx
解决方案资源管理器中文件的子文件,但如果你真的想要它,你可以编辑项目文件并添加适当的依赖 xml分割。
答案位于 default.aspx 第一行:
Language="C#" CodeBehind="Default.aspx.cs" ...
将设置每个部分类工作。
反而,
Language="C#" CodeFile="Default.aspx.cs" ...
会导致偏类出错。
但是,在 vs2017 old-style-webForm 中只能使用 CodeFile,所以你必须尝试另一种方式:只需创建一个文件 ..\WebF8\App_Code\Class3.cs 内容为:
public static class Class3 {
public static int gg3=33;
}
那么你就可以在 default.aspx.cs 中正确看到 Class3.gg3 了。注意,这个 Class3.cs 文件必须在 \App_Code 文件夹中。