【问题标题】:How to programatically add an image to a textblock?如何以编程方式将图像添加到文本块?
【发布时间】:2014-01-30 18:57:51
【问题描述】:

我正在尝试设置一个图标以在保存时附加到文本块,但我不确定如何以编程方式执行此操作。我在想的是你可以将值设置在左侧文本框到图像。我已经尝试过,但我不确定如何将其设置为图像图标:

NoteGridView.SetValue(Canvas.LeftProperty(double)block.GetValue(Canvas.LeftProperty));

这就是我在布局中添加注释的方式:

// Creates a new textblock that for this note.
TextBlock block = new TextBlock();
//block.SetValue
notepadTxtBox.SetValue(Canvas.LeftProperty, (double)block.GetValue(Canvas.LeftProperty));
block.Width = 250;
block.Height = 125;
block.Text = notepadTxtBox.Text;


// Add that note to the grid.
NoteGridView.Items.Add(block);

有谁知道我将如何实现这一点,或者是否可以在 xaml 代码中做到这一点?

这可能会更好地理解我正在尝试做的事情:

【问题讨论】:

    标签: c# image windows-8 tablet-pc


    【解决方案1】:

    您可以在TextBlock 中放置一个StackPanel,其中包含一个Image 和另一个TextBlock,如下所示:

    <TextBlock>
        <StackPanel Orientation="Horizontal">
            <Image Name="YourImage" Source="image/Under-Construction.png" />
            <TextBlock Text="Your Text Block Text" />
        </StackPanel>
    </TextBlock>
    

    然后您就可以像这样以编程方式设置图像:

    YourImage.Source = "path.to.image.file"
    

    【讨论】:

    • 您确定StackPanel 可以是TextBlock 的子代吗?
    • @MichaelPerrenoud,是的。我在发布代码之前对其进行了测试,以避免提供虚假信息的尴尬:) StackPanel 绝对可以是 TextBlock 的孩子。
    猜你喜欢
    • 2014-03-20
    • 1970-01-01
    • 2021-01-22
    • 2010-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-12
    • 1970-01-01
    相关资源
    最近更新 更多