0
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Session["SavedSQLSources"] == null)
SavedSQLSources = new Dictionary<String, SqlDataSource>();
SavedSQLSources.Add(ASPxComboBox1.ID, SqlDataSource1);
SavedSQLSources.Add(ASPxComboBox2.ID, SqlDataSource2);
Session["SavedSQLSources"] = SavedSQLSources;
}
else
{
if (Session["SavedSQLSources"] != null)
SavedSQLSources = (Dictionary<String, SqlDataSource>)Session["SavedSQLSources"];
}
}
问候,我有多个ASPxCombobox,每个都有自己的数据源。因此,我首先将每个控件ID与它们在数据字典中相应的数据源对象保存在 之间。ASPxCombobox未从SQLdatasource保存在会话中
protected void Cmb_Callback(object source, CallbackEventArgsBase e)
{
ASPxComboBox comboBox = (ASPxComboBox)source;
string[] args = e.Parameter.Split('|');
for (int i = 0; i < args.Length; ++i)
SavedSQLSources[comboBox.ID].SelectParameters[i].DefaultValue = args[i];
comboBox.DataSourceID = SavedSQLSources[comboBox.ID].ID;
comboBox.DataBind();
}
在页面上做了几个动作,然后每个控件启动它的回调并将其数据与相应的数据源绑定。
嗯......当直接使用数据源时完美地工作,但是当它来自保存在Session(来自SavedSQLSources)中的数据源时没有获取任何项目。 对象的实例不应该相同吗?
在此先感谢,TheRainFall。