c#更改按钮。其他方法的文本
我正在编写一个小数独游戏。我有一个2d数组和许多显示数字的按钮。当我点击其中一个按钮(sudokuBoxClicked)时,我从按钮的名称中得到按钮的x和y位置。现在就行了。函数结束时,打开函数changeNumberinSudoku。此函数首先将数组项更改为button.text上所需的数字,然后将更改button.text,使其不再为null,而是具有变量changeNumber的值 由于我的数独游戏中有81个按钮,程序不知道应该更改哪个按钮。因此,它应该更改触发sudokuBoxClicked函数的按钮的文本属性。我现在的问题基本上是: 如何将对象发送方发送到第二个函数,以便更改其属性? 为了让您更好地了解我需要什么,以下是重要的代码:c#更改按钮。其他方法的文本,c#,function,properties,C#,Function,Properties,我正在编写一个小数独游戏。我有一个2d数组和许多显示数字的按钮。当我点击其中一个按钮(sudokuBoxClicked)时,我从按钮的名称中得到按钮的x和y位置。现在就行了。函数结束时,打开函数changeNumberinSudoku。此函数首先将数组项更改为button.text上所需的数字,然后将更改button.text,使其不再为null,而是具有变量changeNumber的值 由于我的数独游戏中有81个按钮,程序不知道应该更改哪个按钮。因此,它应该更改触发sudokuBoxClick
int changeNumber = 1;
int[,] sudokuMap = new int[9,9];
private void sudokuBoxClicked(object sender, EventArgs e)
{
string nameOfClickedBox = (sender as Button).Name;
int xPositionOfClickedButton = Convert.ToInt32(nameOfClickedBox.Substring(7, 1));
int yPositionOfClickedButton = Convert.ToInt32(nameOfClickedBox.Substring(9, 1));
//The array-position of the clicked box, is contained in its name.
changeNumberinSudoku(xPositionOfClickedButton, yPositionOfClickedButton);
}
private void changeNumberinSudoku(int xPos, int yPos)
{
sudokuMap[xPos, yPos] = changeNumber;
}
感谢所有能帮助我的好人
-AlexanderLe将发送方作为参数传递给第二个函数:
changeNumberinSudoku(xPositionOfClickedButton, yPositionOfClickedButton, (sender as Button));
并更改您的函数签名:
private void changeNumberinSudoku(int xPos, int yPos, Button btn)
{
sudokuMap[xPos, yPos] = changeNumber;
btn.Text = ...
}
第二个功能是什么?你是在说“changeNumberinSudoku”函数吗?@Alexander很乐意帮忙。如果这回答了您的问题,您可以单击复选标记接受它。