C# 分数不起作用,int++;标签中不递增
我有一个计算碰撞的程序 代码C# 分数不起作用,int++;标签中不递增,c#,silverlight,label,increment,C#,Silverlight,Label,Increment,我有一个计算碰撞的程序 代码 int eatenAppleCount = 0; public MainPage() { score.Content = "Score" + " " + Convert.ToString(eatenAppleCount); } for (int indx = myapples.Count - 1; indx >= 0; indx--) { myapples[indx].Update(Layou
int eatenAppleCount = 0;
public MainPage()
{
score.Content = "Score" + " " + Convert.ToString(eatenAppleCount);
}
for (int indx = myapples.Count - 1; indx >= 0; indx--)
{
myapples[indx].Update(LayoutRoot);
bool collided = DetectCollision(myapples[indx], myPig);
if (collided)
{
eatenAppleCount ++;
RemoveApple(myapples[indx]);
}
}
问题是,即使在碰撞中,分数也只是读数为0。
有人能帮我吗?我不明白为什么它不是递增的 您需要将此变量作为引用传递
int eatenAppleCount = 0;
public MainPage()
{
CollisionDetect(ref eatenAppleCount);
score.Content = "Score" + " " + Convert.ToString(eatenAppleCount);
}
protected void CollisionDetect(ref eatenAppleCount)
{
for (int indx = myapples.Count - 1; indx >= 0; indx--)
{
myapples[indx].Update(LayoutRoot);
bool collided = DetectCollision(myapples[indx], myPig);
if (collided)
{
eatenAppleCount ++;
RemoveApple(myapples[indx]);
}
}
}
您需要将此变量作为引用传递
int eatenAppleCount = 0;
public MainPage()
{
CollisionDetect(ref eatenAppleCount);
score.Content = "Score" + " " + Convert.ToString(eatenAppleCount);
}
protected void CollisionDetect(ref eatenAppleCount)
{
for (int indx = myapples.Count - 1; indx >= 0; indx--)
{
myapples[indx].Update(LayoutRoot);
bool collided = DetectCollision(myapples[indx], myPig);
if (collided)
{
eatenAppleCount ++;
RemoveApple(myapples[indx]);
}
}
}
您有几个代码片段很难理解,但我认为您只需要在增量后重新应用这一行:
score.Content = "Score" + " " + Convert.ToString(eatenAppleCount);
您有几个代码片段很难理解,但我认为您只需要在增量后重新应用这一行:
score.Content = "Score" + " " + Convert.ToString(eatenAppleCount);
在消息中显示之前,您需要执行代码以计算
eatenaplecount
看起来您只是在使用默认值eatenaplecount
,然后计算它
int eatenAppleCount = 0;
public MainPage()
{
for (int indx = myapples.Count - 1; indx >= 0; indx--)
{
myapples[indx].Update(LayoutRoot);
bool collided = DetectCollision(myapples[indx], myPig);
if (collided)
{
eatenAppleCount ++;
RemoveApple(myapples[indx]);
}
}
score.Content = "Score" + " " + Convert.ToString(eatenAppleCount);
}
在消息中显示之前,您需要执行代码以计算
eatenaplecount
看起来您只是在使用默认值eatenaplecount
,然后计算它
int eatenAppleCount = 0;
public MainPage()
{
for (int indx = myapples.Count - 1; indx >= 0; indx--)
{
myapples[indx].Update(LayoutRoot);
bool collided = DetectCollision(myapples[indx], myPig);
if (collided)
{
eatenAppleCount ++;
RemoveApple(myapples[indx]);
}
}
score.Content = "Score" + " " + Convert.ToString(eatenAppleCount);
}
使用变量创建用作内容的字符串不会将该变量链接到内容。当变量更改时,它不会影响从上一个值创建的内容
当变量更改时,您需要更新内容。将构造函数中的代码放入一个方法中,这样您就可以从构造函数中调用该代码,并且在您想要更新内容时也可以调用该代码。使用变量创建字符串用作内容不会将该变量链接到内容。当变量更改时,它不会影响从上一个值创建的内容
当变量更改时,您需要更新内容。将构造函数中的代码放在一个方法中,这样您就可以从构造函数中调用它,并且可以在需要更新内容时调用它。reference??哪里要转换.ToString?@NewHire如果您在此代码中使用一些OO,则是可能的,因为您需要从主方法中分离一些责任。参考??哪里转换.ToString?@NewHire如果你在代码中使用了一些OO,这是可能的,因为你需要从主方法中分离一些责任。啊,太神奇了,把标签放错地方了。谢谢。啊,太棒了,把标签放错地方了。非常感谢。