C# 为什么';我的treeview不能接受我的xsl更改吗?
我正在使用asp.net 2.0中包含的treeview控件 我想使用我创建的xsl文件(test3.xslt) 为什么Treeview不接收用xsl(我认为是tw)对树所做的更改并显示它们 tw拥有xslt转换所做的更改 我的treeview的DataSourceID是我的xmldatasource(xmldatasource1) 谢谢 蓝色的 我想出来了 首先,如果指定了xmldatasource.DataFile,xmldatasource将阻止任何其他xml。我在上面使用了xmldatasource.data并指定了数据文件。(见附件)C# 为什么';我的treeview不能接受我的xsl更改吗?,c#,asp.net,treeview,C#,Asp.net,Treeview,我正在使用asp.net 2.0中包含的treeview控件 我想使用我创建的xsl文件(test3.xslt) 为什么Treeview不接收用xsl(我认为是tw)对树所做的更改并显示它们 tw拥有xslt转换所做的更改 我的treeview的DataSourceID是我的xmldatasource(xmldatasource1) 谢谢 蓝色的 我想出来了 首先,如果指定了xmldatasource.DataFile,xmldatasource将阻止任何其他xml。我在上面使用了xmldata
其次,也不要在xmldatasource中指定xslt文件。我试图转换它(使用xslTransform)并在xmlDatasource.TransFormFile中指定相同的样式表(http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.xmldatasource.transformfile.aspx). 不要同时做这两件事(除非你知道为什么要这样做。)你希望什么时候检测到更改?顺便说一句,我给xmldatasource分配了一个xml数据文件(treeview.xml),并尝试使用xmlTransform.load来“转换”它,如上所述。xmldoc是treeview.xml的修改版本。我对其他方法持开放态度。这是在ASP.NET页面的Site.Master中的Page_load函数中。我希望在Page_load event.xmldatasource.EnableCaching设置为False后,xmldoc对象(修改后的treeview.xml)的内容会出现。
argsList.AddParam("Groups_From_Logged_In_User","",myLocalGroups);
XslCompiledTransform xslTransform = new XslCompiledTransform();
xslTransform.Load("C:\\ANewBeginning3\\test3.xslt");
StringWriter tw = new StringWriter();
using (StreamWriter sw = new StreamWriter("C:\\ANewBeginning3\\output.xml"))
{
xslTransform.Transform(xmldoc.CreateNavigator(), argsList, tw);
XmlDataSource1.Data = tw.ToString();
}
XmlDataSource1.DataBind();
}