<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="RSS_xslt_style.asp" version="1.0" ?>
<rss version="2.0" xmlns:WebWizForums="https://syndication.webwiz.net/rss_namespace/">
 <channel>
  <title>Codejock Developer Community : Dynamic XAML</title>
  <link>http://forum.codejock.com/</link>
  <description><![CDATA[This is an XML content feed of; Codejock Developer Community : MarkupLabel Control : Dynamic XAML]]></description>
  <copyright>Copyright (c) 2006-2013 Web Wiz Forums - All Rights Reserved.</copyright>
  <pubDate>Fri, 17 Apr 2026 09:04:10 +0000</pubDate>
  <lastBuildDate>Tue, 18 Oct 2016 19:59:37 +0000</lastBuildDate>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Web Wiz Forums 12.04</generator>
  <ttl>360</ttl>
  <WebWizForums:feedURL>forum.codejock.com/RSS_post_feed.asp?TID=23166</WebWizForums:feedURL>
  <image>
   <title><![CDATA[Codejock Developer Community]]></title>
   <url>http://forum.codejock.com/forum_images/codejock-logo.gif</url>
   <link>http://forum.codejock.com/</link>
  </image>
  <item>
   <title><![CDATA[Dynamic XAML : My goal here is to have a Recent...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23166&amp;PID=75228&amp;title=dynamic-xaml#75228</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=1368">ScottW</a><br /><strong>Subject:</strong> 23166<br /><strong>Posted:</strong> 18 October 2016 at 7:59pm<br /><br />My goal here is to have a Recent Items list as part of a larger markup page. The majority of the page is pre-built XAML, but I need to inject the recently used items at runtime. I can get access to the StackPanel that holds the list and add one, but the Hyperlink functionality doesn't work.<br><br>In this sample, the first item in the list is in the XAML and I am trying to add a second item that looks and works like the first time. It doesn't take on the hyperlink foreground color and it doesn't fire the events. <br><br>To duplicate this, create a VB6 form with just a MarkupLabel control named "Markup" and paste in this code:<br><br><table width="99%"><tr><td><pre class="BBcode"><br>Option Explicit<br><br>Private Sub Form_Load()<br><br>&nbsp;&nbsp;&nbsp; Dim sXaml As String<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sXaml = "&lt;Page xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml' Width='800' Height='500'&gt;"<br>&nbsp;&nbsp;&nbsp; sXaml = sXaml &amp; "&lt;Border&gt;&lt;StackPanel x:Name='RecentList'&gt;"<br>&nbsp;&nbsp;&nbsp; sXaml = sXaml &amp; "&lt;TextBlock x:Name='Recent1'&nbsp; TextWrapping='Wrap' Margin='0,0,0,2'&gt;&lt;Hyperlink x:Name='txtRecent1' Tag='Recent1' Click='HyperClick' MouseEnter='HyperEnter' MouseLeave='HyperLeave' TextDecorations='' Foreground='#2f719c'&gt;Recent Item 1&lt;/Hyperlink&gt;&lt;/TextBlock&gt;"<br>&nbsp;&nbsp;&nbsp; sXaml = sXaml &amp; "&lt;/StackPanel&gt;&lt;/Border&gt;&lt;/Page&gt;"<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; Markup.MarkupContext.SetHandler Me<br>&nbsp;&nbsp;&nbsp; Markup.Caption = sXaml<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; AddRecentEntry "Recent Item 2"<br>&nbsp;&nbsp;&nbsp; <br>End Sub<br><br>Private Sub AddRecentEntry(ByVal sDB As String)<br><br>&nbsp;&nbsp;&nbsp; Dim SP As MarkupStackPanel<br>&nbsp;&nbsp;&nbsp; Dim TB As MarkupTextBlock<br>&nbsp;&nbsp;&nbsp; Dim HL As MarkupHyperlink<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; ' Find the recent database list<br>&nbsp;&nbsp;&nbsp; Set SP = Markup.MarkupUIElement.FindName("RecentList")<br>&nbsp;&nbsp;&nbsp; If Not SP Is Nothing Then<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' Create a new Hyperlink<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Set HL = Markup.MarkupContext.CreateObject("Hyperlink")<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If Not HL Is Nothing Then<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HL.Name = "txtRecent2"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HL.Tag = "Recent2"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HL.AddHandler HL.ClickEvent, "HyperClick"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HL.AddHandler HL.MouseEnterEvent, "HyperEnter"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HL.AddHandler HL.MouseLeaveEvent, "HyperLeave"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HL.TextDecorations = xtpMarkupTextDecorationsNone<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HL.Foreground = Markup.MarkupContext.CreateSolidBrush(&amp;H9C712F)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; End If<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ' Create a new TextBlock<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Set TB = Markup.MarkupContext.CreateObject("TextBlock")<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If Not TB Is Nothing Then<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TB.Name = "txtRecent5"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TB.TextWrapping = xtpMarkupTextWrap<br>'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TB.Margin.Bottom = 2<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TB.Text = sDB<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; End If<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TB.Inlines.Add HL<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SP.Children.Add TB<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; End If<br><br>End Sub<br><br><br>Public Sub HyperClick(ByVal Sender As MarkupObject, ByVal Args As MarkupRoutedEventArgs)<br>Debug.Print "Click", Sender.Name, Sender.Tag, Args.Event.Name<br>End Sub<br><br>Public Sub HyperEnter(ByVal Sender As MarkupObject, ByVal Args As MarkupRoutedEventArgs)<br>Debug.Print "Enter", Sender.Name, Sender.Tag, Args.Event.Name<br>End Sub<br><br>Public Sub HyperLeave(ByVal Sender As MarkupObject, ByVal Args As MarkupRoutedEventArgs)<br>Debug.Print "Leave", Sender.Name, Sender.Tag, Args.Event.Name<br>End Sub<br></pre></td></tr></table><br><br>What am I doing wrong here?<br><br>Also, not sure how to set the margins on the TextBlock since that property seems to be read-only.<br><br>Thanks!<br><br>]]>
   </description>
   <pubDate>Tue, 18 Oct 2016 19:59:37 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23166&amp;PID=75228&amp;title=dynamic-xaml#75228</guid>
  </item> 
 </channel>
</rss>