【问题标题】:Need help with binding Telerik's RADStrip dynamically在动态绑定 Telerik 的 RADStrip 方面需要帮助
【发布时间】:2010-12-19 00:03:37
【问题描述】:

按照telerik网站上的this示例并实现如下:-

aspx 页面:-

<div id="div1" runat="server">
        <telerik:RadTabStrip ID="RadTabStrip1" runat="server" MultiPageID="RadMultiPage1">
        </telerik:RadTabStrip>
        <telerik:RadMultiPage ID="RadMultiPage1" runat="server" Width="100%">
            <telerik:RadPageView ID="pv1" runat="server" Selected="true">
            </telerik:RadPageView>
        </telerik:RadMultiPage>
    </div>

后面的代码:-

行数据集中的这个方法 ds = objbllQuesType.GetQuesType();返回一个 DataSet,其中包含一个包含 QuesTypeID 和 QuesType 名称的表

现在发生的事情是,RadStrip 上只生成了 4 个选项卡,我知道这是因为“for loop (int i = 0; i

另外,所有选项卡的文本都是“QuesType1”,应该如下:-

在 RadStrip 中,Tab1 的 Text 应该是 "QuesType1",Tab2 的 Text 应该是 "QuesType2" ,Tab3 的 Text 应该是 "QuesType3" 等等。

我应该如何修改上面的代码来实现我想要的?

[编辑] 有人使用 Telerik 的 RADStrip 吗?需要帮助。

我应该在下面的代码中进行哪些更改,以便获取 QuesTypes 并将 QuesTypes 绑定到选项卡?目前它只获取第一个 QuesType 并将其绑定到所有选项卡的文本属性。

 for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
            tab.Text = ds.Tables[0].Rows[0]["QuesType"].ToString();
            }

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    尝试使用此代码将文本设置为选项卡:

    protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                DataSet ds = GetDataSet();
    
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    CreateRootTab(i, ds);
                }
                RadTabStrip1.SelectedIndex = 0;
            }
        }
    
        private void CreateRootTab(int index, DataSet ds)
        {
            for (int i = 0; i < ds.Tables[0].Columns.Count; i++)
            {
                var tab = new RadTab();
                tab.Text = (string) ds.Tables[0].Rows[index].ItemArray[i];
                RadTabStrip1.Tabs.Add(tab);
            }
        }
    
        private DataSet GetDataSet()
        {
            bllQuesType objbllQuesQType = new bllQuesType();
            var ds = new DataSet();
            return objbllQuesType.GetQuesType();
        }
    

    我没有与 Rad 合作,但我认为这对你的情况会有所帮助。

    最好的问候,迪玛。

    【讨论】:

    • 在上面的代码中,GetQuesType() 返回了一个完整的名为 Table 的 QuesType,所以下面代码生成的 Tabs 就等于 no。表中的记录。我想要的是只有 QuesType 列被绑定到选项卡。我应该在此代码中更改什么?
    • 如果必须绑定名为 QuesType 的列,则需要遍历每一行并获取所需的列。试试这个: for(int i = 0; i
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-13
    • 1970-01-01
    • 2020-06-26
    • 2011-01-27
    相关资源
    最近更新 更多