将图像添加到wpf中的标签?我目前正在使用WPF在C#中开发应用程序。我需要做的是让它们在标签上成为标签文本左侧的图像、X的小图像或刻度的小图像,具体视情况而定。我将项目中包含的图像放在名为images的文件夹中。如何在不使用XAML代码的情况下以编程方式分配要放置在代码标签左侧的图像。由于您想在代码后面而不是在XAML中,我建议放弃Label并使用带有图像和TextBlock的StackPanel,如下所示,MyGrid可以是任何容器......然后在你的代码后面......StackPanelmyStackPanel=newStackPanel();myStackPanel.Orientation=Orientation.Horizo??ntal;图片myImage=newImage();位图图像myImageSource=newBitmapImage();myImageSource.BeginInit();myImageSource.UriSource=newUri("Images/MyImage.png");.EndInit();myImage.Source=myImageSource;TextBlockmyTextBlock=newTextBlock();myTextBlock.Text="这是我的图片";myStackPanel.Children.Add(myImage);myStackPanel.Children.Add(myTextBlock);我的网格。Children.Add(myStackPanel);您可以将其分组到一个网格中:或者,由于标签是一个内容控件,您可以将图像控件放在标签控件中:MyText一旦您知道xaml应该是什么样子,通过代码创建相同的元素非常容易简单的。我不同意这里的其他两个答案。无需添加网格来包裹内容。堆栈面板就足够了。在xaml中,在需要内容的位置添加堆栈面板。然后在按钮处理程序或窗口加载后的代码中添加此图像coolPic=newImage(){Name="pic",Source=newBitmapImage(newUri("pack://application:,,,/images/cool.png")),Stretch=Stretch.None//这保留了原始大小,填充将填充};TextBlocktext=newTextBlock(){Name="myText",Text="ThisismycoolPic"};myStack.Children.Add(coolPic);//添加图片首先将其放在左侧myStack.Children.Add(text);//文本会显示在右边然后添加图像以交换图像和文本的位置。如果您没有看到图像,请确保图像属性窗口中的图像生成操作设置为资源。为了使您的代码更有用或更动态,您需要一种更改文本或图像的方法。因此,假设您确实想要更改这些内容,然后继续执行((TextBlock)FindName("myText")).Text="myothercoolpic";您可能希望更改文本,但会发生什么?你调用的对象是空的。但我给了它一个名字。您需要添加//注册新控件RegisterName(text.Name,text);这样您以后就可以访问文本块。这是必需的,因为您在构建和显示框架后向框架添加控件。所以注册图片后,最后的代码是这样的如果分享的内容对你有用,需要了解更多C#学习教程,希望大家多多关注—ImagecoolPic=newImage(){Name="pic",Source=newBitmapImage(newUri("pack://application:,,,/images/cool.png")),Stretch=Stretch.None//这保留了原始大小,填充将填充};//注册新控件RegisterName(coolPic.Name,coolPic);TextBlocktext=newTextBlock(){Name="myText",Text="ThisismycoolPic"};//注册新控件RegisterName(text.Name,text);myStack.Children.Add(coolPic);myStack.Children.Add(文本);本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
