C# 重载方法,具体取决于调用实例

C# 重载方法,具体取决于调用实例,c#,wpf,mvvm,C#,Wpf,Mvvm,我真的是一个编程新手,因此我总是认为我可以编写更干净、更简单的代码 我想知道,是否有一种方法可以实现方法的不同行为,这取决于调用它的实例 例如: 从LevelCommand param = worker.CreateWindow(elemParams); 从IntersectionCommand param = worker.CreateWindow(elemParams); CreateWindow调用WPF模型的构造函数,WPF模型有TextBox(ofc有更多项,但只有TextBox是

我真的是一个编程新手,因此我总是认为我可以编写更干净、更简单的代码

我想知道,是否有一种方法可以实现方法的不同行为,这取决于调用它的实例

例如:

LevelCommand

param = worker.CreateWindow(elemParams);
IntersectionCommand

param = worker.CreateWindow(elemParams);
CreateWindow
调用WPF模型的构造函数,WPF模型有TextBox(ofc有更多项,但只有TextBox是相关的),根据命令,它需要显示不同的字符串。(“为
{callerclass}
选择参数”)

以下是构造函数:

public Model(List<string> attribute, string caller)
{
    try
    {
        if (attribute.Count == 0)
            throw new Exception("Нет подходящих параметров");
        Attd = attribute;
        Attw = attribute;
        Caption = "Выберите параметр для \nзаписи "+caller; //Bound to the TextBox, point of my question
        Vis = Visibility.Collapsed;
    }
    catch (Exception ex)
    {
        TaskDialog.Show("Title", ex.Message);
    }
}
公共模型(列表属性,字符串调用者) { 尝试 { 如果(attribute.Count==0) 抛出新异常(“аааааааааааааааа; Attd=属性; Attw=属性; 标题=“bыыаааааааааааааааааа Vis=可见度。塌陷; } 捕获(例外情况除外) { TaskDialog.Show(“标题”,例如消息); } }

正如您所看到的,到目前为止,我只是尝试通过一个常数字符串,但我认为这不是一个好的解决方案。

尝试使用CeleReMeNeNestAtvest::/P>

public Model(List<string> attribute, [CallerMemberName] string caller="")
公共模型(列表属性,[CallerMemberName]字符串调用者=”)