XmlDataSource.OnTransforming メソッド
アセンブリ: System.Web (system.web.dll 内)

Dim e As EventArgs Me.OnTransforming(e)

イベントが発生すると、デリゲートを使用してイベント ハンドラが呼び出されます。詳細については、「イベントの利用」を参照してください。
OnTransforming メソッドを使用すると、デリゲートを結び付けずに、派生クラスでイベントを処理することもできます。派生クラスでイベントを処理する場合は、この手法をお勧めします。
継承時の注意 派生クラスで OnTransforming をオーバーライドする場合は、登録されているデリゲートがイベントを受け取ることができるように、基本クラスの OnTransforming メソッドを呼び出してください。
TreeView コントロールと共に XmlDataSource コントロールを使用して変換された XML データを表示する方法を次のコード例に示します。XML 変換は、TransformFile プロパティで指定したスタイル シートを使って実行されます。このスタイル シートは、さらに、データ ソース コントロールに対し実行時に XsltArgumentList オブジェクトとして渡された変換用の引数を使用します。コード例では、OnTransforming メソッドに対して設定されたメソッド名で識別されるカスタムのイベント ハンドラで Transforming イベントを処理することによって、XsltArgumentList オブジェクトをデータ ソース コントロールに渡しています。
<%@ Page Language="VB" %> <%@ Import Namespace="System.Xml.Xsl" %> <SCRIPT runat="server"> Private Sub TransformEventHandler(sender As Object, e as EventArgs) ' Add a dynamic transformation argument. Dim d As New DateTime d = DateTime.Now.AddDays(20) 'Create an XsltArgumentList. Dim xslArg As XsltArgumentList = New XsltArgumentList xslArg.AddParam("purchdate", "", d.ToShortDateString()) Dim aXmlDataSource as XmlDataSource = CType(sender, XmlDataSource) aXmlDataSource.TransformArgumentList = xslArg End Sub ' TransformEventHandler </SCRIPT> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML> <BODY> <form runat="server"> <asp:xmldatasource id="XmlDataSource1" runat="server" datafile="bookstore.xml" transformfile="bookswithdiscount.xsl" ontransforming="TransformEventHandler" /> <!- TreeView uses hierachical data, so the XmlDataSource uses an XmlHierarchicalDataSourceView when a TreeView is bound to it. --> <asp:treeview id="TreeView1" runat="server" datasourceid="XmlDataSource1"> <databindings> <asp:treenodebinding depth="1" datamember="genre" textfield="name" valuefield="name"/> <asp:treenodebinding depth="2" datamember="book" textfield="title" valuefield="title"/> <asp:treenodebinding depth="3" datamember="chapter" textfield="name" valuefield="num"/> </databindings> </asp:treeview> </form> </BODY> </HTML>
<%@ Page Language="C#" %> <%@ Import Namespace="System.Xml.Xsl" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <SCRIPT runat="server"> private void TransformEventHandler(object sender, EventArgs e) { // Add a dynamic transformation argument. DateTime d = new DateTime(); d = DateTime.Now.AddDays(20); // Create an XsltArgumentList. XsltArgumentList xslArg = new XsltArgumentList(); xslArg.AddParam("purchdate", "", d.ToShortDateString()); ((XmlDataSource) sender).TransformArgumentList = xslArg; } </SCRIPT> <HTML> <BODY> <form runat="server"> <asp:XmlDataSource id="XmlDataSource1" runat="server" datafile="bookstore.xml" transformfile="bookswithdiscount.xsl" ontransforming="TransformEventHandler" /> <!- TreeView uses hierachical data, so the XmlDataSource uses an XmlHierarchicalDataSourceView when a TreeView is bound to it. --> <asp:treeview id="TreeView1" runat="server" datasourceid="XmlDataSource1"> <databindings> <asp:treenodebinding Depth="1" datamember="genre" textfield="name" valuefield="name"/> <asp:treenodebinding depth="2" datamember="book" textfield="title" valuefield="title"/> <asp:treenodebinding depth="3" datamember="chapter" textfield="name" valuefield="num"/> </databindings> </asp:treeview> </form> </BODY> </HTML>
<%@ Page Language="VJ#" %> <%@ Import Namespace="System.Xml.Xsl" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <SCRIPT runat="server"> private void TransformEventHandler(Object sender, System.EventArgs e) { // Add a dynamic transformation argument. System.DateTime.get_Now().AddDays(20); // Create an XsltArgumentList. XsltArgumentList xslArg = new XsltArgumentList(); xslArg.AddParam("purchdate", "", System.DateTime.get_Now().AddDays(20). ToShortDateString()); ((XmlDataSource)sender).set_TransformArgumentList(xslArg); }//TransformEventHandler </SCRIPT> <HTML> <BODY> <form runat="server"> <asp:XmlDataSource id="XmlDataSource1" runat="server" datafile="bookstore.xml" transformfile="bookswithdiscount.xsl" ontransforming="TransformEventHandler" /> <!- TreeView uses hierachical data, so the XmlDataSource uses an XmlHierarchicalDataSourceView when a TreeView is bound to it. --> <asp:treeview id="TreeView1" runat="server" datasourceid="XmlDataSource1"> <databindings> <asp:treenodebinding Depth="1" datamember="genre" textfield="name" valuefield="name"/> <asp:treenodebinding depth="2" datamember="book" textfield="title" valuefield="title"/> <asp:treenodebinding depth="3" datamember="chapter" textfield="name" valuefield="num"/> </databindings> </asp:treeview> </form> </BODY> </HTML>
コード例の XML ファイルには、次のデータが含まれています。
<bookstore> <genre name="fiction"> <book ISBN="0000000000"> <title>Secrets of Silicon Valley</title> <price>12.95</price> <chapters> <chapter num="1" name="Introduction" /> <chapter num="2" name="Body" /> <chapter num="3" name="Conclusion" /> </chapters> </book> </genre> <genre name="novel"> <book genre="novel" ISBN="1111111111"> <title>Straight Talk About Computers</title> <price>24.95</price> <chapters> <chapter num="1" name="Introduction" /> <chapter num="2" name="Body" /> <chapter num="3" name="Conclusion" /> </chapters> </book> </genre> </bookstore>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:param name="purchdate"/> <xsl:template match="bookstore"> <bookstore> <xsl:apply-templates select="genre"/> </bookstore> </xsl:template> <xsl:template match="genre"> <genre> <xsl:attribute name="name"> <xsl:value-of select="@name"/> </xsl:attribute> <xsl:apply-templates select="book"/> </genre> </xsl:template> <xsl:template match="book"> <book> <xsl:attribute name="ISBN"> <xsl:value-of select="@ISBN"/> </xsl:attribute> <xsl:attribute name="title"> <xsl:value-of select="title"/> Price: <xsl:value-of select="price"/> 15% discount if purchased by: <xsl:value-of select="$purchdate"/> </xsl:attribute> <xsl:apply-templates select="chapters/chapter" /> </book> </xsl:template> <xsl:template match="chapter"> <chapter> <xsl:attribute name="num"> <xsl:value-of select="@num"/> </xsl:attribute> <xsl:attribute name="name"> <xsl:value-of select="@name"/> </xsl:attribute> <xsl:apply-templates/> </chapter> </xsl:template> </xsl:stylesheet>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からXmlDataSource.OnTransforming メソッドを検索する場合は、下記のリンクをクリックしてください。

- XmlDataSource.OnTransforming メソッドのページへのリンク