开发者

Creating an Instance WPF InlineCollection

I'm populating a class programtically at runtime, and started by building a collection of InlineColl开发者_如何学Goection classes. However, InlineCollection class cannot be instantiated.

My question is, how do I add a collection of inlines to Span.Inlines whose type is InlineCollection, if I can't create an Instance of it?

Basically I need a collection of a collection of Inline classes, so I can randomally set Span.Inlines to a new collection of Inline classes.


yes, as you cannot instantiate InlineCollection class, but what you can do is to use for example List<Inline> and populate this.

later it is easy to apply them to, for example, a TextBlock:

// create some inlines
List<Inline> inlines = new List<Inline>();
inlines.Add(new Run() { Text = "text" });
Span span = new Span();
span.Inlines.AddSafe(new Run() { Text = "text inside span" });
inlines.Add(span);

// now apply to a TextBlock
TextBlock tb = new TextBlock() { TextWrapping = TextWrapping.Wrap };
tb.Inlines.Clear();
foreach (Inline i in inlines)
    tb.Inlines.Add(i);


Have a look here: http://msdn.microsoft.com/en-us/magazine/cc163371.aspx

It looks like what you want to do is:

span.Inlines.Add(new Run("Some normal text"));
var b = new Bold();
b.Inlines.Add(new Run(" Some bold text"));
span.Inlines.Add(b);
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜