<?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 : CXTPScrollBarCtrl for all Controls</title>
  <link>http://forum.codejock.com/</link>
  <description><![CDATA[This is an XML content feed of; Codejock Developer Community : Controls : CXTPScrollBarCtrl for all Controls]]></description>
  <copyright>Copyright (c) 2006-2013 Web Wiz Forums - All Rights Reserved.</copyright>
  <pubDate>Tue, 12 May 2026 20:13:05 +0000</pubDate>
  <lastBuildDate>Mon, 18 Jul 2022 09:19:59 +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=23989</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[CXTPScrollBarCtrl for all Controls : Scollbars in markup are drawn...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=78482&amp;title=cxtpscrollbarctrl-for-all-controls#78482</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=9461">Pesci7</a><br /><strong>Subject:</strong> 23989<br /><strong>Posted:</strong> 18 July 2022 at 9:19am<br /><br /><div>Scollbars in markup are drawn in CXTPMarkupScrollBar::OnRender using CXTPWinThemeWrapper </div><div><br></div><div><table width="99%"><tr><td><pre class="BBcode"></div><div>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; CXTPWinThemeWrapper m_themeScrollBar;<br>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; m_themeScrollBar.OpenThemeData(NULL, L"SCROLLBAR");<br></pre></td></tr></table></div><div><br></div><div>I have found that you can take advantage of dark theme passing "DarkMode_Explorer::ScrollBar" instead of "SCROLLBAR" (also "Explorer::ScrollBar" is a valid name). You can also pass a list of name "DarkMode_Explorer::ScrollBar;SCROLLBAR" in case dark mode is not supported.</div><div><br></div><div>What's missing is a way to select light or dark theme using code.<br></div>]]>
   </description>
   <pubDate>Mon, 18 Jul 2022 09:19:59 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=78482&amp;title=cxtpscrollbarctrl-for-all-controls#78482</guid>
  </item> 
  <item>
   <title><![CDATA[CXTPScrollBarCtrl for all Controls : &amp;gt;Set the window theme of the...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=78375&amp;title=cxtpscrollbarctrl-for-all-controls#78375</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=669">markr</a><br /><strong>Subject:</strong> 23989<br /><strong>Posted:</strong> 25 January 2022 at 7:31pm<br /><br /><div>&gt;&nbsp;Set the window theme of the control to take advantage of Windows 10's recently added dark theme.</div><div><br></div><div>Has anyone found a way to make this option work with markup scrollbars (e.g. ScrollViewer)?</div>]]>
   </description>
   <pubDate>Tue, 25 Jan 2022 19:31:31 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=78375&amp;title=cxtpscrollbarctrl-for-all-controls#78375</guid>
  </item> 
  <item>
   <title><![CDATA[CXTPScrollBarCtrl for all Controls : how to tie a CXTPEDIT witha CXTPScrollBar?...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=78058&amp;title=cxtpscrollbarctrl-for-all-controls#78058</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=9439">yangyanhui</a><br /><strong>Subject:</strong> 23989<br /><strong>Posted:</strong> 09 March 2021 at 10:53pm<br /><br />how to tie a CXTPEDIT with&nbsp;<span style=": rgb248, 248, 252;">&nbsp;a CXTP</span><span ="highlight">ScrollBar? the version of codejock is 17.3.0</span><div id="qb-sougou-search" style="display: n&#111;ne; opacity: 0; left: 3px; top: 30px;"><p>搜索</p><p ="last-btn">复制</p>< =""></div>]]>
   </description>
   <pubDate>Tue, 09 Mar 2021 22:53:38 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=78058&amp;title=cxtpscrollbarctrl-for-all-controls#78058</guid>
  </item> 
  <item>
   <title><![CDATA[CXTPScrollBarCtrl for all Controls : I  tried but the explanation page...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77743&amp;title=cxtpscrollbarctrl-for-all-controls#77743</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=5158">lrenoux</a><br /><strong>Subject:</strong> 23989<br /><strong>Posted:</strong> 25 June 2020 at 9:55am<br /><br /><div><div ="tlid-results-c&#111;ntainer="" results-c&#111;ntainer"="" style="display: flex; flex-directi&#111;n: column; min-height: 128px; width: 640px; border-radius: 0px 0px 8px; font-family: Roboto, arial, sans-serif;"><div ="tlid-result="" result-dict-wrapper"="" style="flex-grow: 1;"><div ="result="" tlid-copy-target"="" style="min-height: 128px; padding: 20px 16px 56px 28px;"><div ="text-wrap="" tlid-copy-target"="" style="margin-bottom: 0px; min-height: 56px;"><div ="result-shield-c&#111;ntainer="" tlid-copy-target"="0" style="padding-right: 44px; directi&#111;n: ltr;"><span ="tlid-translati&#111;n="" translati&#111;n"="" lang="en" style="min-height: 20px; line-height: 28px; white-space: pre-wrap; padding-right: 8px;"><span title="" =""=""><font size="3">I  tried but the explanation page for controls deriving from CWnd is slightly succinct and wrong !</font></span></span></div><div ="result-shield-c&#111;ntainer="" tlid-copy-target"="0" style="padding-right: 44px; directi&#111;n: ltr;"><span ="tlid-translati&#111;n="" translati&#111;n"="" lang="en" style="min-height: 20px; line-height: 28px; white-space: pre-wrap; padding-right: 8px;"><span title="" =""=""><font size="3"><br></font></span></span></div><div ="result-shield-c&#111;ntainer="" tlid-copy-target"="0" style="padding-right: 44px; directi&#111;n: ltr;"><span ="tlid-translati&#111;n="" translati&#111;n"="" lang="en" style="min-height: 20px; line-height: 28px; white-space: pre-wrap; padding-right: 8px;"><span title="" =""=""><font size="3">Could we have a sample for this specific case ?</font></span></span></div><div ="result-shield-c&#111;ntainer="" tlid-copy-target"="0" style="padding-right: 44px; directi&#111;n: ltr;"><span ="tlid-translati&#111;n="" translati&#111;n"="" lang="en" style="min-height: 20px; line-height: 28px; white-space: pre-wrap; padding-right: 8px;"><span title="" =""=""><font size="3"><br></font></span></span></div><div ="result-shield-c&#111;ntainer="" tlid-copy-target"="0" style="padding-right: 44px; directi&#111;n: ltr;"><span ="tlid-translati&#111;n="" translati&#111;n"="" lang="en" style="min-height: 20px; line-height: 28px; white-space: pre-wrap; padding-right: 8px;"><span title="" =""="" style=""><font size="3">L.</font></span></span></div></div></div></div></div></div>]]>
   </description>
   <pubDate>Thu, 25 Jun 2020 09:55:48 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77743&amp;title=cxtpscrollbarctrl-for-all-controls#77743</guid>
  </item> 
  <item>
   <title><![CDATA[CXTPScrollBarCtrl for all Controls : Great news I will test.What about...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77711&amp;title=cxtpscrollbarctrl-for-all-controls#77711</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=686">cpede</a><br /><strong>Subject:</strong> 23989<br /><strong>Posted:</strong> 18 June 2020 at 3:31am<br /><br />Great news I will test.<div><br></div><div>What about scrollbars in markup &lt;ScrollViewer /&gt; ?</div><div><br></div><div>-cpede</div>]]>
   </description>
   <pubDate>Thu, 18 Jun 2020 03:31:52 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77711&amp;title=cxtpscrollbarctrl-for-all-controls#77711</guid>
  </item> 
  <item>
   <title><![CDATA[CXTPScrollBarCtrl for all Controls : I&amp;#039;m glad to inform you that...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77707&amp;title=cxtpscrollbarctrl-for-all-controls#77707</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=8199">astoyan</a><br /><strong>Subject:</strong> 23989<br /><strong>Posted:</strong> 18 June 2020 at 12:22am<br /><br /><div>I'm glad to inform you that this issue has finally been addressed in 19.2, and as dbrookes mentioned above, it was quite a tricky task due to the way standard windowless scrollbars are implemented for Windows common controls.</div><div><br></div>Please refer to the following FAQ article that explains the solution -&nbsp;<a href="https://codejock.com/support/articles/mfc/general/scrollablectrls.asp" target="_blank" rel="nofollow">https://codejock.com/support/articles/mfc/general/scrollablectrls.asp</a><div><br></div><div>GUI_VisualStudio sample demonstrates most of those scroll bars in action.</div><div><br></div><div>We are aware of some minor issues and it is to be yet added to combo box, so there is some room for improvements. Your feedbacks will help us identify and fix issues faster.</div><div><br></div><div>Regards,</div><div>&nbsp; Alexander</div>]]>
   </description>
   <pubDate>Thu, 18 Jun 2020 00:22:12 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77707&amp;title=cxtpscrollbarctrl-for-all-controls#77707</guid>
  </item> 
  <item>
   <title><![CDATA[CXTPScrollBarCtrl for all Controls : Yes, it will be interesting to...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77706&amp;title=cxtpscrollbarctrl-for-all-controls#77706</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=686">cpede</a><br /><strong>Subject:</strong> 23989<br /><strong>Posted:</strong> 17 June 2020 at 4:52pm<br /><br />Yes, it will be interesting to see if they added this to all XTToolkit controls; like PropertyEditor, Report, MarkupScroll, TaskPanel etc. Its all or nothing...<div><br></div><div>-cpede</div>]]>
   </description>
   <pubDate>Wed, 17 Jun 2020 16:52:20 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77706&amp;title=cxtpscrollbarctrl-for-all-controls#77706</guid>
  </item> 
  <item>
   <title><![CDATA[CXTPScrollBarCtrl for all Controls : Forget everything I said :)v19.2.0...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77703&amp;title=cxtpscrollbarctrl-for-all-controls#77703</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=9372">dbrookes</a><br /><strong>Subject:</strong> 23989<br /><strong>Posted:</strong> 17 June 2020 at 2:16am<br /><br /><div>Forget everything I said :)<br></div><div><br></div><div>v19.2.0 has been released with some stuff for this. I will have to check it out. Thanks XTP.<br></div>]]>
   </description>
   <pubDate>Wed, 17 Jun 2020 02:16:32 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77703&amp;title=cxtpscrollbarctrl-for-all-controls#77703</guid>
  </item> 
  <item>
   <title><![CDATA[CXTPScrollBarCtrl for all Controls : Ahh yes... scrollbars...Unfortunately...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77691&amp;title=cxtpscrollbarctrl-for-all-controls#77691</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=9372">dbrookes</a><br /><strong>Subject:</strong> 23989<br /><strong>Posted:</strong> 04 June 2020 at 11:23pm<br /><br /><div>Ahh yes... scrollbars...</div><div><br></div><div>Unfortunately I don't think it's an easy fix. There is some useful information here <a href="https://docs.microsoft.com/en-us/windows/win32/c&#111;ntrols/about-scroll-bars#standard-scroll-bars-and-scroll-bar-c&#111;ntrols" target="_blank" rel="nofollow">https://docs.microsoft.com/en-us/windows/win32/controls/about-scroll-bars#standard-scroll-bars-and-scroll-bar-controls</a>. We're currently looking at similar problems in our XTP application. From what I've been looking there are a few options:<br></div><div><br></div><div><br></div><div>1) First disable the inbuilt scrollbar of the control (if its a list box remove WS_VSCROLL style) and second tie the control together with an CXTPScrollBar. I've done this once with a markup list box on a ribbon backstage (which is essentially a dialog) and it seems to work okay (still in testing).<br></div><div><br></div><div>In this case the scrollbar is a sibling of the list box and the parent updates its position to be next to the list box and the scrollbar's SCROLLINFO on WM_SIZE. For SCROLLINFO I use the number of visible list box items as the page size and total number of list box items as the max. <br></div><div><br></div><div>The parent window implements WM_VSCROLL to handle changes from the CXTPScrollBar. The parent window also hooks the list box window to handle WM_KEYDOWN VK_UP/VK_DOWN and WM_VSCROLL to update the scroll bar.<br></div><div><br></div><div>For the list box I use SetTopIndex and GetTopIndex to update to and from the list box. Tree controls are a little different, I haven't had time to look at these yet.<br></div><div><br></div><div>Hopefully this is enough of an explanation to try reproduce this and hopefully what I've done isn't terrible.<br></div><div><br></div><div><i>Another idea I had was to wrap the list box in a "scrollbar container" window which moves the clipped child window inside.  I think it would allow smooth scrolling which might be nice. I've not tried this though it may be a terrible idea.</i><br></div><div><br></div><div><br></div><div>2) Set the window theme of the control to take advantage of Windows 10's recently added dark theme.<br></div><div><table width="99%"><tr><td><pre class="BBcode">::SetWindowTheme(hwnd, "DarkMode_Explorer", NULL)</pre></td></tr></table></div><div>This should give you a dark themed scroll bar. I've tested this on XTP's tree controls by doing the following patch to CXTPTreeBase::RefreshMetrics...</div><div><table width="99%"><tr><td><pre class="BBcode">if (m_bExplorerTheme)<br></div><div>&nbsp; {<br></div><div>&nbsp; CString strTheme = m_pTheme-&gt;IsThemeDark() ? L"DARKMODE_EXPLORER" : L"EXPLORER";<br></div><div>&nbsp; m_pWindowsTreeTheme-&gt;SetWindowTheme(m_pTreeCtrl-&gt;GetSafeHwnd(), strTheme, NULL);<br></div><div>&nbsp; }</div><div></pre></td></tr></table></div><div><br></div><div>3) Implement your own versions of common controls.</div><div><br></div><div>4) Don't use Win32, ok great.<br></div><div><br></div><div>XTP does have a class named CXTPScrollBarContainer which it uses internally for some stuff. I've not been able to figure out how to use it correctly. Help would be appreciated there :)</div><div><br></div><div>Also, XTP's skin framework does replace these built-in scrollbars somehow. Not sure on the implementation there but from my testing the skin framework doesn't work very well with high DPI scaling. We don't use skin framework in our application.</div><div><br></div><div>I would also appreciate any help with this :)<br></div>]]>
   </description>
   <pubDate>Thu, 04 Jun 2020 23:23:15 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77691&amp;title=cxtpscrollbarctrl-for-all-controls#77691</guid>
  </item> 
  <item>
   <title><![CDATA[CXTPScrollBarCtrl for all Controls : I can see that there exist aCXTPScrollBarCtrl...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77690&amp;title=cxtpscrollbarctrl-for-all-controls#77690</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=686">cpede</a><br /><strong>Subject:</strong> 23989<br /><strong>Posted:</strong> 04 June 2020 at 11:08am<br /><br />I can see that there exist a&nbsp;CXTPScrollBarCtrl class, which can be themed. However most XT control does not use that control, meaning that scrollbars in e.g. property grids, lists etc are not themed.<div><br></div><div>How can I use the&nbsp;CXTPScrollBarCtrl in all controls and windows to get my scroll bars themed?</div><div><br></div><div>Is there a trick to subclass or replace the existing scrollbars?</div>]]>
   </description>
   <pubDate>Thu, 04 Jun 2020 11:08:17 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=23989&amp;PID=77690&amp;title=cxtpscrollbarctrl-for-all-controls#77690</guid>
  </item> 
 </channel>
</rss>