使用委托函数作为方法参数错误

基兰·雷迪
private void btnTest_Click(object sender, EventArgs e)
    {

        //Func<Employee, int> getId = (x => x.EmployeeId);
        Func<TextBox, string> getInput = (x => x.Text);
        txtName.Text = GetInput(getInput);
    }


private string GetInput<T>(Func<T, string> getInput)
    {
        string s = getInput(this.txtName.Text);
        return "Hello "+s;
    }

在“字符串s = getInput(this.txtName.Text);”处 我遇到的错误是“代理'System.Func'有一些无效的参数”...。这是什么问题...有人可以帮助我。

jdphenix

由于声明了Func<T, string> getInput因此遇到了编译时错误,但尝试将a传递string给它。

https://msdn.microsoft.com/zh-cn/library/bb549151%28v=vs.110%29.aspx

public delegate TResult Func<in T, out TResult>( T arg )

您已声明getInput是带有T参数的函数,但您正在尝试将其传递给string

Func<T, string> getInput概念上可被表示为:

string getInput(T parameter)

我相信您可能打算做这样的事情:

private string GetInput(Func<TextBox, string> getInput)
{
    return String.Format("Hello {0}", getInput(this.txtName));
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

委托函数错误

来自分类Dev

匿名委托作为函数参数

来自分类Dev

匿名委托作为函数参数

来自分类Dev

For循环函数参数错误

来自分类Dev

委托私有函数作为不同类中方法的参数

来自分类Dev

使用内在函数时如何避免“ out”参数错误?

来自分类Dev

将函数作为参数传递给另一个函数错误

来自分类Dev

参数错误的递归方法

来自分类Dev

参数错误的递归方法

来自分类Dev

构造函数,将任何委托作为参数

来自分类Dev

theano函数的输入参数错误

来自分类Dev

捕获函数中的参数错误?

来自分类Dev

函数错误缺少参数1

来自分类Dev

python:先验函数错误生成的参数

来自分类Dev

C ++参数化的构造函数错误

来自分类Dev

std :: threads构造函数参数错误

来自分类Dev

Azure 函数 documentdb 输出参数错误

来自分类Dev

std :: atomic作为类成员:使用boost / python.hpp时使用删除的函数错误

来自分类Dev

令人赞叹的wm / wicious小部件:使用格式函数会抛出错误的参数错误

来自分类Dev

令人赞叹的wm / vicious小部件:使用格式函数会抛出错误的参数错误

来自分类Dev

使用函数作为参数的wrap方法

来自分类Dev

C ++使用方法作为函数的参数

来自分类Dev

使用函数作为参数的wrap方法

来自分类Dev

在 Func 委托中使用 List 作为参数

来自分类Dev

解决方法和参数错误

来自分类Dev

将函数(委托?)传递给期望对象的函数作为参数

来自分类Dev

使用MOD重写的$ _GET参数错误

来自分类Dev

使用MOD重写的$ _GET参数错误

来自分类Dev

错误“参数错误”