从数据库动态地绑定窗口窗体上的按钮文本

时间:2014-04-08 08:12:53

标签: winforms c#-4.0

如何动态绑定表单上的button文本?

我想为用户提供一个功能,他可以从数据库中动态更改按钮文本。

因此,从数据库中,我获得了dataset <code>Dataset</code> where I am getting value

的价值

现在的问题是,如何将此文本绑定到我的表单上的按钮控件。

你能帮我解决这个问题。

提前致谢。

1 个答案:

答案 0 :(得分:1)

首先将数据集转换为DataTable并使用以下代码。我已根据您的问题测试了此代码。

DataTable _ds = _commonDAC.GetButtonName(1); // i assume you are getting dataset form here 


            foreach (DataRow row in _ds.Rows)
            {
                string ControlName = row["ControlName"].ToString();
                if( ControlName == "bttnLeftMessageOnMachine")
                     bttnLeftMessageOnMachine.Text = row["EventText"].ToString();
                if (ControlName == "bttnSpokeToPerson")
                    bttnSpokeToPerson.Text = row["EventText"].ToString();
                if (ControlName == "bttnHomeKitchenNotReady")
                    bttnHomeKitchenNotReady.Text = row["EventText"].ToString();
                if (ControlName == "bttnInstallerNotReady")
                    bttnInstallerNotReady.Text = row["EventText"].ToString();
                if (ControlName == "bttnNoAnswer")
                    bttnNoAnswer.Text = row["EventText"].ToString();
                if (ControlName == "bttnBusyPhoneLine")
                    bttnBusyPhoneLine.Text = row["EventText"].ToString();
                if (ControlName == "bttnPhLineNotOperation")
                    bttnPhLineNotOperation.Text = row["EventText"].ToString();
                if (ControlName == "bttnCustomerWillCallInstaller")
                    bttnCustomerWillCallInstaller.Text = row["EventText"].ToString();
                if (ControlName == "bttnIncorrectPhNo")
                    bttnIncorrectPhNo.Text = row["EventText"].ToString();
                if (ControlName == "bttnOrderOnHold")
                    bttnOrderOnHold.Text = row["EventText"].ToString();
                if (ControlName == "bttnOtherNoteRequired")
                    bttnOtherNoteRequired.Text = row["EventText"].ToString();
              }