gpt4 book ai didi

c# - 如何格式化我的类(class)?使用 toString,在 GUI 中还是以其他方式?

转载 作者:行者123 更新时间:2023-11-30 17:12:48 25 4
gpt4 key购买 nike

我在库中有一些类代表一些文件的分析和验证结果。

这些类包含枚举、无效属性列表等。

我编写了一个使用该库的 GUI 应用程序,并编写了一些用于在富文本框中以可读形式编写这些类的函数。

我突然想到,我可能必须在类的 ToString 重写中编写此格式。

但是,所有这些格式都非常长,包括插入制表符和换行符、包括对列表的多次迭代、提取枚举描述等。

所以我想知道 - toString 大小和复杂性的标准是什么?我应该在 toString 中编写困难的格式吗?或者也许我应该提供一些其他的通用接口(interface)——是否有任何通用接口(interface)可用于类的格式化可打印输出?还是应该在 GUI 应用程序中执行?

谢谢!

最佳答案

除了 UI 库之外,不应将诸如 UI 格式之类的东西烘焙到任何库中。

相反,您可以做的是提供一组与 UI 无关的类,这些类可以格式化您的实体,例如,可以执行生成格式所需的复杂代码,并期望在 UI 中显示。

这些可以使用一个简单的界面,比如:

public interface IEntityFormatter<T>
{
string GetFormattedValue(T myEntity);
}

public class Customer
{
public string FullName {get;set;}
}

public class CustomerFormatter : IEntityFormatter<Customer>
{
public string GetFormattedValue(Customer myEntity)
{
return myEntity.FullName;
}
}

关于c# - 如何格式化我的类(class)?使用 toString,在 GUI 中还是以其他方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10383930/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com