我有幾個組合框,所有類似的代碼,只有一個,CustomerSelector.SelectedValue,不作業。我什至嘗試過像這樣設定值:CustomerSelector.SelectedValue=32.
此方法用于將所有專案資訊加載到表單中,并在表單加載事件中呼叫。資料似乎加載正常,我什至將“id”加載到 DisplayMember 以進行驗證。
有什么想法阻止 SelectedValue 設定?
void loadProjectInfo()
{
if (isProjectInfoLoaded == false)
{
try
{
DataTable dt4 = new DataTable();
DBConnector db4 = new DBConnector();
db4.query = "SELECT * FROM s1_pm_project WHERE id=" JobID;
dt4 = db4.getDataTable();
DataRow PMProject = dt4.Rows[0];
ProjectNameTextbox.Text = PMProject["ProjectName"].ToString();
this.Text = ProjectNameTextbox.Text;
ProjectAddressTextbox.Text = PMProject["Address"].ToString();
ProjectAddressCity.Text = PMProject["City"].ToString();
ProjectAddressState.DataSource = USStates.States();
ProjectAddressState.ValueMember = "Abbreviations";
ProjectAddressState.DisplayMember = "Abbreviations";
ProjectAddressState.SelectedIndex = -1;
if (!Convert.IsDBNull(PMProject["State"]))
ProjectAddressState.SelectedValue = PMProject["State"].ToString();
ProjectAddressPostalCode.Value = (!Convert.IsDBNull(PMProject["ZipCode"])) ? Convert.ToInt32(PMProject["ZipCode"]) : 00000;
DBConnector db5 = new DBConnector();
db5.query = "SELECT id, Name FROM s1_customer ORDER BY Name ASC";
CustomerSelector.DisplayMember = "Name";
CustomerSelector.ValueMember = "id";
CustomerSelector.DataSource = db5.getDataTable();
CustomerSelector.SelectedIndex = -1;
//if (!Convert.IsDBNull(PMProject["CustomerID"]))
// CustomerSelector.SelectedValue = Convert.ToInt32(PMProject["CustomerID"]);
CustomerSelector.SelectedValue=32;
DBConnector db1 = new DBConnector();
db1.query = "SELECT id, description FROM s1_app_status WHERE id < 2";
ProjectInfo_Status.DataSource = db1.getDataTable();
ProjectInfo_Status.DisplayMember = "description";
ProjectInfo_Status.ValueMember = "id";
ProjectInfo_Status.SelectedValue = Convert.ToInt32(PMProject["IsActive"]);
DBConnector db2 = new DBConnector();
db2.query = "SELECT id, description FROM s1_pm_roll";
ProjectInfoRollSelector.DataSource = db2.getDataTable();
ProjectInfoRollSelector.ValueMember = "id";
ProjectInfoRollSelector.DisplayMember = "description";
ProjectInfoRollSelector.SelectedIndex = -1;
if (Convert.ToInt32(PMProject["RollID"]) > 0)
ProjectInfoRollSelector.SelectedValue = Convert.ToInt32(PMProject["RollID"]);
DBConnector db3 = new DBConnector();
db3.query = "SELECT id, fullname FROM s1_user WHERE id>1";
ProjectInfoPMSelector.DataSource = db3.getDataTable();
ProjectInfoPMSelector.ValueMember = "id";
ProjectInfoPMSelector.DisplayMember = "fullname";
ProjectInfoPMSelector.SelectedIndex = -1;
if (Convert.ToInt32(PMProject["PMID"]) > 0)
ProjectInfoPMSelector.SelectedValue = Convert.ToInt32(PMProject["PMID"]);
ProjectInfoJobNoTextbox.Text = PMProject["JobNo"].ToString();
ProjectInfoValueTextbox.Value = Convert.ToDecimal(PMProject["ApproxValue"]);
if (!Convert.IsDBNull(PMProject["StartDate"]))
StartDateSelector.Value = Convert.ToDateTime(PMProject["StartDate"]);
if (!Convert.IsDBNull(PMProject["ProjectedEndDate"]))
ProjectedEndDateSelector.Value = Convert.ToDateTime(PMProject["ProjectedEndDate"]);
if (!Convert.IsDBNull(PMProject["EndDate"]))
EndDateSelector.Value = Convert.ToDateTime(PMProject["EndDate"]);
CustomerPOTextbox.Text = PMProject["CustomerPO"].ToString();
SalesTaxRateTextbox.Value = Convert.ToDecimal(PMProject["SalesTaxRate"]);
if (!Convert.IsDBNull(PMProject["WarrantyBegin"]))
WarrantyBegin.Value = Convert.ToDateTime(PMProject["WarrantyBegin"]);
if (!Convert.IsDBNull(PMProject["WarrantyEnd"]))
WarrantyEnd.Value = Convert.ToDateTime(PMProject["WarrantyEnd"]);
loadContactList();
}
catch (Exception ex)
{
Errors.Exception(ex);
}
isProjectInfoLoaded = true;
}
}
這是來自的輸出SELECT id, Name FROM s1_customer ORDER BY Name ASC:
| ID | 姓名 |
|---|---|
| 22 | 18-8 謝爾曼奧克斯 |
| 206 | 阿萊霍·盧戈 |
| 233 | 美國建筑商有限責任公司 |
| 235 | AMS 解決方案公司 |
| 1 | ARRIS Builders, Inc. |
| 209 | 克里斯投擲者 |
| 105 | CME 制冷控制 |
| 53 | 海岸線規定 |
| 117 | 科泰克建筑公司 |
| 6 | 發展支持服務公司 |
| 146 | 東灣餐廳供應公司 |
| 31 | 健身狂熱 |
| 7 | 支點建設 |
| 32 | Hardesty & Associates, Inc. |
| 135 | 霍華德電器公司 |
| 9 | J雷建設 |
| 10 | 強生金屬制品 |
| 12 | Jahanna L. Nichols 室內設計公司 |
| 69 | 詹姆斯·巴布建筑公司 |
| 61 | JRE建筑公司 |
| 13 | 卡姆蘭公司,股份有限公司。 |
| 15 | LA Deli Distributors, Inc. |
| 98 | 洛維薩美國有限責任公司 |
| 40 | 移動客戶 |
| 120 | N電暈 |
| 180 | N 圣克拉拉 |
| 5 | N 服務銷售 |
| 129 | 橙冠地產有限責任公司 |
| 223 | 其他客戶 |
| 78 | 太平洋西線公司 |
輸出SELECT * FROM s1_pm_project WHERE id=:
| ID | 專案名 | 活躍 | 客戶ID | 卷號 | PMID | 作業編號 | 近似值 | 開始日期 | 結束日期 | 預計結束日期 | 客戶采購訂單 | 銷售稅率 | 估計ID | 保修開始 | 保修期結束 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 141 | 戈爾賈納 - 卡爾斯巴德 | 1 | 32 | 1 | 23 | 22199 | 37000.00 | 2022-02-07 | 2022-04-29 | 2022-04-29 | 22-012-23 | 0.00 | 空值 | 2022-04-29 | 2023-04-29 |
uj5u.com熱心網友回復:
問題最終出在資料庫上,特別id是s1_customer. 由于某種原因,它具有“無符號”屬性。當它被洗掉時,一切都按預期作業。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/475063.html
