带函数调用的C#条件
编辑:我尝试使用如下函数调用执行一个条件:带函数调用的C#条件,c#,conditional-statements,C#,Conditional Statements,编辑:我尝试使用如下函数调用执行一个条件: public Channels Channel1; public Channels Channel2; public void Scale(string value) { if((Channel1.Scale(value)) has been called) //I don't know if a syntaxe is possible for this { // do something } if((Channel2.Scale(valu
public Channels Channel1;
public Channels Channel2;
public void Scale(string value)
{
if((Channel1.Scale(value)) has been called) //I don't know if a syntaxe is possible for this
{
// do something
}
if((Channel2.Scale(value)) has been called)
{
//do something else
}
}
public bool ScaleHasBeenCalled { get; private set; }
我的表格中的呼叫代码:
Info pub = new Info(); // Class where i have my function Scale
private button1_Click(object sender, EventArgs e)
{
string value = comboBox1.Text;
pub.Channel1.Scale(value);
}
有没有关于remplace的想法被一些有用的东西称为
谢谢你的帮助 在
频道
中,添加一个bool
属性,如下所示:
public Channels Channel1;
public Channels Channel2;
public void Scale(string value)
{
if((Channel1.Scale(value)) has been called) //I don't know if a syntaxe is possible for this
{
// do something
}
if((Channel2.Scale(value)) has been called)
{
//do something else
}
}
public bool ScaleHasBeenCalled { get; private set; }
在Channels.Scale(value)
的末尾,将ScaleHasBeenCalled
设置为true:
ScaleHasBeenCalled = true;
现在,在问题中显示的Scale
方法中,您可以检查ScaleHasBeenCalled
:
if(Channel1.ScaleHasBeenCalled)
{
// do something
}
if(Channel2.ScaleHasBeenCalled)
{
//do something else
}
如果您只需要知道该方法是否已被调用:
作为一个非常基本的解决方案,您可以在频道
类中拥有一个属性:公共bool hascalebeencalled{get;private set;}=false
在Scale
方法中将此字段设置为true
然后在if
中,您只需检查此标志的值:
if (Channels1.HasScaleBeenCalled) {}
如果需要检查是否调用了特定的值
参数:
然后,您可能需要执行更复杂的操作:跟踪所有使用的值:
已标记的字段
列表值{get;}=new List()代码>,并在每次调用刻度时在此列表中添加一个新值,在if
中,您可以检查通道1.valuesthavenscaled.Contains(value)
什么叫
?这个有点unclear@TheGeneralChannel1.Scale(value)
,我试图找到如何验证此调用。public void Scale(string value)
其中定义了此方法!你的意思是“被召唤”?你的意思是检查函数是否被调用?@Pac0是的,这就是我的意思!