2013-05-17 140 views
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工具更改包號的事情。

回答

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 
     } 
相關問題