0

所以我有这个应该计算运输成本的 GUI 应用程序。首先我需要输入正在运送的包裹数量(已经完成),然后从 domainUpDown 工具中选择包裹#(也完成),然后在文本框中输入所选包裹的尺寸。这就是我卡住的地方。这就是我迄今为止所拥有的。

    const int WEIGHT = 0
    const int NMBR_OF_PROPETIES = 7;
    const int MAX_PACKAGES = 10;
    const double FLAT_RATE = 4.99;
    int numOfPackages, packageNumber;


    double[,] packagesArray = new double[MAX_PACKAGES, NMBR_OF_PROPETIES];

    public Form1()
    {
        InitializeComponent();

    }

    private void Form1_Load(object sender, EventArgs e)
    {
        //label texts get initialized
    }

    private void button1_Click(object sender, EventArgs e)
    {
        if (!int.TryParse(numOfPackagesTextBox.Text, out numOfPackages))
        {
            //message box tells that number cant be parsed
        }
        else if(numOfPackages > 0 && numOfPackages < 10)
        {
            //everything in the program is enabled       
        }
        else
        {
            //message box saying that you can't ship more than 10 packages
        }

        //adding package numbers to the domainUpDown tool
        DomainUpDown.DomainUpDownItemCollection items = packageUpDown.Items;
        for (int packageNumber = 1; packageNumber <= numOfPackages; packageNumber++)
        {
            items.Add(packageNumber);
        }

    }

    private void weightBox_TextChanged(object sender, EventArgs e)
    {
        packagesArray[(int)packageUpDown.SelectedItem, WEIGHT] = Convert.ToInt32(weightBox.Text); 
        //also here goes the rest of the dimension entry
    }//from here i don't know what to do, and im sure that this isn't right..

我感到困惑的是,如果用户以某种方式从 domainUpDown 工具更改包号,如何保存输入的文本。

4

1 回答 1

0

您是否尝试注册到 DomainUpDown 的OnChangedSelectedItemChanged事件?

在 OnChanged 事件处理程序上执行保存。

例子:

     myDomainUpDown.OnChanged += new EventHandler(myDomainUpDown_OnChanged);

     void OnChanged(object sender, EventArgs e) 
      {
          //save all the information you need in whatever collection/file/db you want 
      }
于 2013-05-17T08:16:05.087 回答