用于Yahoo的ASP.NET 网络控件 用户界面库 !

分享于 

5分钟阅读

Web开发

  繁體

Screenshot - YuiNet.png

介绍

美国用户界面库用户界面库是客户端Javascript控件库,它解决了日历输入。浮动面板和菜单等许多常见的场景。 这些控件的文档是顶级的,所以我不会花太多时间在每个控件的细节上。 在 ASP.NET 环境中创建这些控件可以很容易地将这些控件放到任何 ASP.NET 页面中,从而使这些控件在环境中正常工作,这是个很好的。 目前,支持以下 YUI 控件:

使用代码

首先,必须为要添加控件的页添加标记前缀:

<%@RegisterTagPrefix="YUI"Assembly="Web.YUI"Namespace="Web.YUI"%>

这允许你对页面上的控件使用 YUI 前缀。 若要在页上使用它们,必须对它的具有 YahooScripManager 控件。 这将管理每个控件所需的所有脚本( .js ) 和样式( .css ) 引用。

<YUI:YahooScriptManagerID="manager"runat="server"/>

接下来,你可以将控件添加到页面。 例如日历控件的外观如下所示:

<YUI:Calendarid="cal"runat="server"/>

Points of interest

Screenshot - YuiNetClassDiagram.png

每个控件实现一个名为 IYahooContol的接口。 这里接口的定义为:

interface IYahooControl
{
 string LoadScript { get;}
 YahooScript[] ScriptDependencies { get;}
 YahooStyleSheet[] StyleDependencies { get;}
}

这允许控件指定依赖哪个Javascript文件,即依赖于哪个文件和需要初始化控件的Javascript。 YahooScriptManager 还使用这个接口来判断哪个页面控制 YUI 命令,这应该被记住。 注意,Javascript和文件是 YUI的一部分,它们由 YahooScriptManager --管理,由托管,可以由托管。 ! 在服务器上或者在服务器上托管( 默认值)。 为了在自己的服务器上承载它们,你必须使用 LocalBasePath 属性指定 YUI 代码的root的路径。

你可以使用 ScriptType 属性控制脚本类型的( 缩小,标准或者调试)。 HostLocation 属性指定文件是否与Yahoo一起托管 ! 或者在你自己的服务器上本地。 如果这些文件托管在Yahoo服务器上,你可以使用 ScriptVersion 属性指定特定的版本。 在多页中使用 YahooScriptManager,并且希望在中央位置配置它时,可以使用web项目的web.config 文件的appSettings 部分。 设置将如下所示:

<appSettings><addkey="YahooScriptManager.HostLocation"value="Yahoo"/><addkey="YahooScriptManager.ScriptType"value="Minified"/><addkey="YahooScriptManager.LocalBasePath"value="/YUI/"/><addkey="YahooScriptManager.ScriptVersion"value="2.2.2"/></appSettings>

在大多数情况下,我尽量尽可以能密切地将 YUI Javascript类的对象模型 MATCH。 然而,有一些例外。 我决定使一些属性的功能更像大多数 ASP.NET 控件,当它有意义时。 例如 YUI 按钮控件有一个名为"已经禁用"的属性,该属性默认为 false。 相反,ASP.NET 倾向于使用"已经启用"并将它的默认为 true。 这些更改中的大部分应该是相当小的。 我试图将大部分面板控件封装到一个名为 FloatPanel的类中。 这个控件可以设置为dragable和 resizable,这将改变实现该功能的实际 YUI 类。

结束语

到目前为止构建的控件的最大缺点是它们并没有提供简单的方法来插入富 YUI 事件模型。 我还没有决定如何处理这个问题,所以任何反馈都绝对欢迎。 我已经把代码放在agavi上,所以希望能够生成一些兴趣,让它的他开发人员为项目提供帮助。 请查看源代码,如果你有任何反馈,请告诉我。

历史记录

  • 5/21/2007 - 初始版本

WEB  控制  USE  asp-net  用户  接口  
相关文章