交换两个按钮控件

时间:2014-09-03 11:06:47

标签: c# winforms user-controls

试图想办法换掉2个按钮有点麻烦。让我们潜入并向您展示代码:

            int mCatID;
            int mTempPos;                

            mCatID = mCatButList[mValidCatNumber - 1].mCatID - 1;               

            if (mTempOldPos.ToString() != txtCatPos.Text) // Attempt to change position
            {
                foreach (DataRow row in mIMenu.mCategoryList.Rows) // Check if space is taken
                {
                    if (row[2].ToString() == txtCatPos.Text) // Space is taken
                    {
                         mCatOldIDX = mTempOldID - 2;
                        mTempDesc = mIMenu.mCategoryList.Rows[mCatOldIDX][1].ToString();

                        mIMenu.mCategoryList.Rows[mCatOldIDX][1] = row[1].ToString(); // desc
                        mIMenu.mCategoryList.Rows[mCatOldIDX][2] = (int)row[2];        // pos                     

                        row[1] = mTempDesc;
                        row[2] = mTempOldPos; //RP change new location to old   

                        mCatOldIDX = 0;

                        mIMenu.mCategoryList.AcceptChanges();

                        break;
                    }
                }
               // mIMenu.mCategoryList.DefaultView.Sort = "POS asc";

                CreateCatButList();
                DisplayMenuCategories(); 

[编辑]我修改了代码,现在它似乎确实交换了按钮控件的位置一次。但是,如果我交换其中两个控件,然后用另一个按钮交换其中一个交换按钮,它似乎搞乱了所有其他按钮上的所有位置值!?这真的开始让我感到烦恼..为什么它第一次起作用然后不适合其他人?我已经尝试接受更改但仍然没有效果..它与数据表mIMenu.mCategoryList中的值有关,其中列[1]是描述,[2]是位置。令人沮丧的是,为什么一旦改变值就会起作用,然后一旦状态改变为修改后决定恢复到较旧的位置值?

0 个答案:

没有答案