1

私のaspxには次のようなデータリストがあります:

<asp:DataList 
     ID="dlSubs" 
     runat="server" 
     CellPadding="0" 
     CellSpacing="5" 
     RepeatDirection="Vertical">...</asp:Datalist>

コードビハインドでこれを行うと:

     this.dlSubs.DataSource = dtCat; // dtCat is a datatable with about 13 rows
     this.dlSubs.DataBind();

すべてが1つの列(垂直)にレンダリングされますが、2つの列が必要です...だから私はこれを行います:

 DataTable dtCat = shop.DAL.ArtikelenDB.GetLeftMenu(Convert.ToInt32(Request.QueryString.Get("catg")));
 double tmpDouble = (double)dtCat.Rows.Count / 2.0;
 double repRow = Math.Ceiling(tmpDouble);
 dlSubs.RepeatColumns = Convert.ToInt32(repRow);
 dlSubs.RepeatDirection = RepeatDirection.Vertical; // also tried without this line...
 this.dlSubs.DataSource = dtCat;
 this.dlSubs.DataBind();

しかし、私が上記を行うとき。それは水平にレンダリングされます...それはどのように可能ですか?

4

2 に答える 2

0

データソースをバインドした後、方向を設定してみてください。

于 2010-01-08T12:29:30.527 に答える
0

私はそれを見つけました...行を手動で計算する代わりにrepeatcolumnsを2に設定する必要がありました...プロパティ名はまだrepeatCOLUMNSなので、私はそれを知っているはずです...あなたがrepeatdirectionを回すとき。行に切り替えるのではなく、列のままです

私の悪い...ごめんなさい

于 2010-01-08T13:07:32.290 に答える