Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在文本框中使用图像_C#_Wpf_Input_Textbox - Fatal编程技术网

C# 在文本框中使用图像

C# 在文本框中使用图像,c#,wpf,input,textbox,C#,Wpf,Input,Textbox,我正在创建一个显示十六进制值的控件(例如FFAA-CA10-56D7)。目前,该值由图像组成。控件的值如下所示: 对于只读控件,我没有问题。我能够根据值放置适当的图像。因此,如果我必须将值设置为FF,例如,我将遍历字符串上的字符,然后放置相应的图像 现在的问题是读写控件的问题。如果我能用同样的字体就好了。现在,我在用户键入值时附加图像但它不友好。如果用户想通过拖动鼠标选择3个字符,该怎么办?。或者如何执行shift+箭头键组合以选择多个字符 因此简而言之我希望保持控件的相同外观和感觉,我不想替

我正在创建一个显示十六进制值的控件(例如FFAA-CA10-56D7)。目前,该值由图像组成。控件的值如下所示:

对于只读控件,我没有问题。我能够根据值放置适当的图像。因此,如果我必须将值设置为
FF
,例如,我将遍历字符串上的字符,然后放置相应的图像

现在的问题是读写控件的问题。如果我能用同样的字体就好了。现在,我在用户键入值时附加图像但它不友好。如果用户想通过拖动鼠标选择3个字符,该怎么办?。或者如何执行shift+箭头键组合以选择多个字符

因此简而言之我希望保持控件的相同外观和感觉,我不想替换文本框的图像。你们推荐什么方法让我保持同样的外观和感觉

我尝试过的事情:


我试图从这些png创建我的自定义字体。但是还没有成功地找到正确的程序,使我能够从png图像创建字体。

我会使用带有水平StackPanel的自定义列表框作为其ItemPanel模板,其ItemsSource将是一个字符列表。然后,您可以提供包含相应图像的适当数据模板(取决于char值,可能使用DataTriggers)。ListBox具有Multiselection,因此您在模仿TextBox的文本选择行为时应该没有问题,并且通过将char列表作为ItemsSource,您还可以允许复制(通过自己实现EditCommands.Copy在ListBox中)

编辑:这是其中一种情况,在这种情况下,您肯定希望实现自己的功能