首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#对数据集中的表进行重新排序

C#对数据集中的表进行重新排序
EN

Stack Overflow用户
提问于 2009-09-15 16:31:58
回答 2查看 3.2K关注 0票数 2

我创建了一个自定义数据集,并将其传递给一个黑盒组件。数据集通常由5-6个表组成(由我指定唯一的名称)。该组件获取数据集,并基于表名构建一个下拉组合框。不过,我需要做的是更改数据集中表的顺序。我需要这样做,所以我首先在下拉列表中为用户提供适当的选择(基于他们在应用程序中的哪个部分)。因此,对于instance...if,它们在“A部分”中,这是下拉列表中显示的第一个表名。用户转到“F部分”,然后是列表first...so中显示的内容,依此类推。

当然,更多的代码密集型方法是只更改向dataset添加表的顺序。这是可行的,但我认为必须有一些方法来更优雅地用更少的代码来做到这一点。

我在C#中使用3.5框架。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-09-15 16:53:51

请记住,DataSets及其内容存储在堆中,因此您可以在DataSet中的多个位置拥有一个DataTable对象。

只需在位置0处创建一个虚拟DataTable的DataSet即可。然后,根据它们所在的任何部分,将相应的表放在位置零。您的表名将在您的DropDownBox中出现两次,一次是作为“默认”,另一次是在下面以正确的上下文和其他表的顺序出现。

代码语言:javascript
复制
public class ThisThing
{
    private DataSet myDS = new DataSet();

    //Populate your DataSet as normal

    public DataSet ChangeLocation(int CurrentSectionNumber)
    {    
        myDS.Table[0] = myDS.Table[CurrentSectionNumber]
    }
}
票数 2
EN

Stack Overflow用户

发布于 2009-09-15 17:10:11

我不确定强迫你的排序信息到DataSet的数据结构中是最直观的方法,你可以考虑传递一个有序的DataTable列表,而不是DataSet (或者除了它之外)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1428231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档