1

我需要将星形插入到字符串中,该字符串将被分配为 a 的文本TreeNode。这可能吗?

每个TreeNode都有不同的级别,并且可以由这些星星进行注释。有些节点只有一颗星,有些有两颗,有些没有星星。星号将始终出现在文本字符串的末尾。例如:

SU450**
4

3 回答 3

6

您必须使用Font包含要显示的字符的 a 。

大多数情况下,Arial Unicode MS会工作。

这是使用“黑星”(U+2605)的示例

void Main()
{
    var w = new Form();
    var t = new TreeView();
    w.Controls.Add(t);
    t.Dock=DockStyle.Fill;
    var star = "\u2605";
    t.Nodes.Add("good: " + star);
    t.Nodes.Add("great: "+ star + star + star);
    t.Font=new System.Drawing.Font("Arial Unicode MS", 13f);
    w.Show();
}

在此处输入图像描述

于 2012-09-04T11:51:31.937 回答
4

您不能将形状插入字符串,但有多种 unicode 字符可供选择。

黑星U+2605,看起来不错。

如果您的字体具有正确的字符表示,那么您将很幸运。


这是维基百科上的列表

从 U+2721 到 U+2743 的范围提供了很多关于star的变化。


★, ✡, ✢, ✣, ✣, ✤, ✥, ✦, ✧, ✨, ✩, ✪, ✫, ✬, ✭, ✮, ✯, ✰, ✱, ✲  

希望这些示例是正确的,我的字体没有代表它们。

于 2012-09-04T11:47:46.417 回答
3

这个角色好用吗?(Unicode 字符 066D)

٭

或者,您可以创建自己的树节点类(继承自System.Windows.Forms.TreeNode)并覆盖该OnPaint方法。然后你可以画你需要的任何东西。

或者,将TreeNode 的图标设置为您自己绘制或从famfamfam 之类的地方获得的星形图标。

于 2012-09-04T11:48:58.947 回答