1

アプリケーションのステータス「Current」または「Expired」を示すドロップダウンがあります。「終了日」が c# の「現在の日付」を超えた後、この値を「期限切れ」に変更したい。

以下は、読み込みステータスのコードです

public void loadStatus()
{
    ArrayList arrNew = new ArrayList();
    String[] tmpArray = InfoLoader.loadStatus(2).Split('\n');
    for (int i = 0; i < tmpArray.Length; i++)
    {
        String[] cols = tmpArray[i].Split('\t');
        if (cols.Length == 2)
        {
            arrNew.Add(new ListValues(cols[0], cols[1], ListValues.FORWARD));
        }

    }
    cmboStatus.DataSource = arrNew;
    cmboStatus.DisplayMember = "Desc";
    cmboStatus.ValueMember = "ID";
}

以下はロードページのコードです

enter code here
public void loadPage(int newEmpIndex)
{
    empIndex = newEmpIndex;
    DataTable dtEA = dbcEA.getDT();
    DataRow row = dbcEA.getDT().Rows[empIndex];

    cmboApptType.SelectedValue =row["EmpAppTypeID"].ToString();
    txtFTRate.Text = row["EmpAppointFTCompRate"].ToString();
    txtTimeBase.Text = row["EmpAppointTimeBase"].ToString();
    txtSalary.Text = row["EmpAppointSalary"].ToString();
    txtFund.Text = row["EmpAppointPrimaryFund"].ToString();
    txtDateStart.Text =  DateTime.Parse(row["EmpAppointDateBegin"].ToString()).ToShortDateString();
    txtDateEnd.Text = DateTime.Parse(row["EmpAppointDateEnd"].ToString()).ToShortDateString();

    txtPayrollStart.Text = UtilityDates.parse(row["EmpAppointPayrollDateStart"].ToString(), UtilityDates.SHORTDATE);
    txtPayrollEnd.Text = UtilityDates.parse(row["EmpAppointPayrollDateEnd"].ToString(), UtilityDates.SHORTDATE);


    txtETrac.Text = row["EmpAppointEtrac"].ToString();
    cmboStatus.SelectedValue = row["EmpAppointStatusID"].ToString().Trim();
    cmboPositionNumber.SelectedValue = row["EmpAppointPositionNum"].ToString().Trim();
    txtPositionNum.Text = row["EmpAppointPositionNum"].ToString();
    txtMemo.Text = row["EmpAppointMemo"].ToString();
    cmboJobCodeID.SelectedValue = row["JobCodeID"].ToString();


    //if (UtilityParser.isInt(dtEA.Rows[empIndex].ItemArray[16].ToString()))
    if (UtilityParser.isInt(row["TransFundID"].ToString()))
    {
        TransFundID = int.Parse(row["TransFundID"].ToString());
    }

    resetIsChanged();
    checkNavButtons();
}

これで私を助けてください。上記のコードに「if」条件を挿入する方法を知りたいです。

4

1 に答える 1

0

さて、あなたはこの行を持っています:

cmboStatus.SelectedValue = row["EmpAppointStatusID"].ToString().Trim();

したがって、次のように変更できます。

if (some interesting condition here)
{
   cmboStatus.SelectedValue = "fab new value";
}
else
{
   cmboStatus.SelectedValue = row["EmpAppointStatusID"].ToString().Trim();
}

ただし、あなたの質問からは明確ではありませんが、これが問題を引き起こすと思います:

これは "fab new value" をデータベースに保存しないため、問題が発生する可能性があります。だから私は次のようなことを提案します:

if (some interesting condition here)
{
   cmboStatus.SelectedValue = "fab new value";
   updateStatus(parameters needed)
}
else
... more stuff
于 2013-01-03T18:55:19.563 に答える