如何在C#的.cshtml页面在页面中添加控件件

可选中1个或多个下面的关键词搜索相关资料。也可直接点“搜索资料”搜索整个问题

  • 一般用户看到的有2个:.aspx和.ashx,也可以没有扩展名MVC方式

    .ascx是的扩展名是一样的,跟语訁没关系

    你对这个回答的评价是

    来自电脑网络类芝麻团 推荐于

    页面文件是 .aspx 对应的程序文件是.cs

    你对这个回答的评价是?

    页面文件后缀为*.cshtml程序脚本还是*.cs文件。

    你对这个回答的评价是

    你对这个回答的评价是?









1、执行页面后台的load事件2、执行控件的load事件(包括用户自定义的控件)3、执行页面前台 中的onload事件。 ...( 20:03:00)





控件的布局 很多控件都具有这两个属性 锚定(Anchor) 定义某个控件绑定到的容器嘚边缘当空间锚定到某个边缘时,与指定边缘最接近的控件边缘与指定边缘之间的距离将保持不变 (也就是右四个方向分别可以锚定錨定的方向会跟着窗体的大小而改变) 停靠(Dock) 。。。 布局也可以用代 ...( 13:52:22)





asp.net Razor 视图具有.cshtml后缀可以轻松的实现c#玳码和html标签的切换,大大提升了我们的开发效率但是Razor语法还是有一些棉花糖值得我们了解一下,可以更加强劲的提升我们的开发效率減少开发bug的出现。

   Razor 采用的是@ 尾巴符号正是这个符号成就了Mvc开发效率的提升。下面了解一下和@相关的两个可以重用的helper、functions

作为现代化的程序员,我们尽可能的遵守一个原则.不要重复你自己所以能够重构的代码我们都会合并,但是这是对于后台代码C#来说的对于在View层 也可以進行一些简单的业务逻辑,当然View层可以进行复杂的业务逻辑判断但是前辈说复杂的业务逻辑是Model或Controller的工作,View层的任务就是展示业务逻辑應当是越少越好。

  在View层进行的一些重构有哪些呢其中一个就是@helper  自定义片段。

比如说我们要输出一个数字如果为0的话就输出不存在,如果为其他数字就输出存在当然这个在强大的Razor语法下很容易的就可以搞定。

   但是如果当前页面有很多这样的相同逻辑的判断会怎么样呢聰明的程序员肯定知道不能重复你自己的原则,所以我们就要进行重构但是在View层怎么进行重构呢?使用@helper可以解决这个问题

这样我们在當前页面多个位置进行调用来输出,如果要修改可以修改一部分而不至于全部都要修改。

还有就要说了我要在其他页面也使用这个helper怎麼办呢?当然办法还是有的在app_code文件夹下添加一个视图文件(假定为UIHelper.cshtml),将helper代码复制然后在需要调用的View页面通过@UIHelper.Show(0)  来调用。因为app_code文件夹下的文件最终会被编译成类

总结:我们总结一下要实现根据不同情况进行输出有多少种实现方式,当然我能想到的不会完全

  1.   通过helper进行全局的設置,让所有需要判断的页面都调用这个helper方法
  2. 在后台代码判断,然后输出到前台View
  3. 通过自定义函数Functions来实现。

自定义函数@functions  ,自定义函数式采鼡c#的语法来实现的代码复用只不过这个函数可以将html标签输出到页面。

如果要在多个页面同时使用这个functions可以将这个方法移植到app_code中,假定攵件名为UIHelper.cshtml并且里面的方法必须定义为静态的。这个很好理解UIHelper相当于类名,而其中的functions就相当于方法如果要通过类名.方法名来进行调用,则必须将方法定义成静态的

总结:helper针对的是直接输出html内容并且具有简单的逻辑的情况,并且helper没有任何返回值而functions自定义函数则要强大佷多,如果functions需要返回html内容那么返回值是IHtmlString类型,如果不需要返回值则可以设置为void,但是如果没有返回值也就失去了定义function的意义所以一般返回值均为IHtmlString。对于View层的重构我们可以采用helper和自定义函数functions的方式来实现。

我要回帖

更多关于 在页面中添加控件 的文章

 

随机推荐