问题是这样的:
这适用于使用 C# 和 LINQ to SQL 的 WPF 应用程序。
当用户想要查看客户列表时,他/她开始在文本框中输入名称。 textchanged 事件使用输入文本来定义筛选列表的 LINQ 语句的 where 子句。
我目前有两个这样的文本框,它们运行基本上相同的代码,但我无法将该代码简化为单个函数 - 我将在更多地方使用客户列表。
这是一些代码:
private void CustomerListFiller(object sender, TextChangedEventArgs e)
{
string SearchText;
FrameworkElement feSource = e.Source as FrameworkElement;
***SearchText = sender.Text;***
var fillCustList = from c in dbC.Customers
where c.CustomerName.StartsWith(SearchText)
orderby c.CustomerName
select new
{
c.CustomerID,
c.CustomerName
};
粗斜体线就是问题所在。我不知道如何获取发送者的文本值以在 StartsWith 函数中使用。错误信息是:
错误 1“object”不包含“Text”的定义,并且找不到接受“object”类型的第一个参数的扩展方法“Text”(是否缺少 using 指令或程序集引用?)
您必须将“sender”变量强制转换为 TextBox:
SearchText = (sender as TextBox).Text;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)