-1

有没有办法将 DropDownlist 数据源转换为数据表。

gridview 可以进行以下操作。但不适用于下拉列表。

DataTable dtSource = (DataTable)DropDownListCNPPRO.DataSource;
4

2 回答 2

0

DataSource属性只是内部变量的 getter 和 setter 方法。从问题内容来看,我猜测该属性是某种 IDataSource 类型,它是用DataTableclass 实现的。

但是,我的观点是,T 当且仅当

  • T是该属性的基类或接口。
    或者
  • T不是基类,而是继承人,并且它或它的后代之前已设置为该属性。像这样:

例子

interface IFoo { }
class Foo1 : IFoo { }
class Foo2 : IFoo { }

class Bar
{
    internal IFoo Foobar { get; set; }
}

void main()
{
    Bar bar = new Bar();
    bar.Foobar = new Foo1();

    IFoo instance1 = bar.Foobar; // Ok.
    Foo1 instance2 = (Foo1)bar.Foobar; // Bad practice, but ok.

    Foo2 instance3 = (Foo2)bar.Foobar; // Bad practive plus an exception.
    Foo2 instance3 = (Foo2)(Foo1)bar.Foobar; // Still an exception.
    Foo2 instance3 = (Foo2)(IFoo)(Foo1)bar.Foobar; // Still a fail.
}
于 2012-11-14T09:39:19.027 回答
0

这绝对取决于数据源是什么。如果你更换

DropDownListCNPPRO.DataSource

通过“真实”数据源(例如通用列表),编译器会告诉您是否可以转换。

于 2012-11-14T09:57:17.877 回答