【问题标题】:Silverlight AutoCompleteBox use Custom method instead of ToStringSilverlight AutoCompleteBox 使用自定义方法而不是 ToString
【发布时间】:2023-03-21 16:47:01
【问题描述】:

我是 Silverlight 的新手。

我有一个 AutoCompleteBox,其中填充了从 Web 服务检索到的数据。 Webservice 与 MSSQL Server 对话。 我还有一个 DataGrid 来显示一些信息。

AutoCompleteBox ItemsSource 绑定到 List<Car> 。自然,当我尝试使用 AutoCompleteBox 时,会调用 ToString() 方法以在自动完成框中显示字符串。

我的 DataGrid 有一列也使用汽车对象。所以再次调用 ToString() 方法。我为 DataGrid 覆盖了我的 ToString() 方法,但是随着我在编程方面的进步,我被 AutoCompleteBox 卡住了。因为我希望它显示不同的 String 而不是 Car Object 的 ToString 返回的内容。

是否可以定义类似于 ToString() 的方法,以便 AutoCompleteBox 将使用它而不是 Car Object ToString 方法?如果是这样,我将如何在 XAML 部分中定义它?

提前致谢,

授予

【问题讨论】:

  • 在问这样的问题时,如果您包含您当前拥有的相关 Xaml 的示例(在本例中为您当前使用的 AutoCompleteBox 的 Xaml),它确实会有所帮助。这使得添加包含您的 Xaml 的答案以及所需的调整对回答者来说更容易,也更容易消化。

标签: silverlight autocompletebox


【解决方案1】:

向您的 Car 类添加一个您希望在您的 AutoCompleteBox 中显示的属性,我们将其命名为 DisplayName,但您可以随意命名。

现在在AutoCompleteBoxValueMemberPath 属性中添加指定此属性,类似于:-

<AutoCompleteBox ItemsSource="{Binding Whatever}" ValueMemberPath="DisplayName" />

【讨论】:

  • 感谢您的回答。真的很有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-09
  • 2016-02-06
  • 1970-01-01
  • 1970-01-01
  • 2017-05-23
相关资源
最近更新 更多