0

ショッピング カート システムの Iphone ビュー機能のプロセスで、製品リストで Iphone 用の ComponentOne ツールを使用して実装しようとしています。

私はそれが階層データコントロールであることを理解しているので、私はそれをXMLデータソースにバインドしています.

ここに画像の説明を入力

要件: C1Navigation リスト テンプレートでレイアウトを定義し、上記のスクリーン グラブのように XPath でデータをバインドしたいと考えています。

以下は、私が試みたが失敗したコードです。エラーがスローされます:「Eval()、XPath()、Bind() などのデータバインディング メソッドは、... でのみ使用できます。」

私は何を間違っていますか?.私にアドバイスしてください。

<asp:XmlDataSource ID="XmlDataSource1" runat="server" XPath="/NewDataSet/_x0028__x0028"

DataFile="~/App_Data/Coffee____1__0__0_0_d.xmlのコピー">

<C1NavigationList:C1NavigationList ID="C1NavigationList1" 
  runat="server" DataSourceID="XmlDataSource1" Text="XMLDataSource"   NavigationListType="RoundedCornersList" TrackItemsStructure="false">

<%# XPath("@item_smkt_desc")%>

4

1 に答える 1

1

これを行うには、XmlDataSource の代わりに for ループを使用します。とにかく、UIをより細かく制御できます。私はこの方法をかなりうまく使いました。コードの書き方は次のとおりです。

System.Xml.Linq.XElement xEle = System.Xml.Linq.XElement.Load(Server.MapPath("~/App_Data/Copy of Coffee___1_0__0_0_d.xml"));
var items = from c in xEle.Elements("NewDataSet") select c;
foreach (System.Xml.Linq.XElement ele in items)
{
    C1.Web.iPhone.C1NavigationList.C1NavigationListItem li = new C1.Web.iPhone.C1NavigationList.C1NavigationListItem();
    li.Text = ele.Attribute("item_smkt_desc");
    C1NavigationList1.Items.Add(li);
}
于 2011-10-05T13:52:20.910 に答える