<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://dev.net.ua/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Взаимодействие WPF и WindowsForms</title><link>http://dev.net.ua/blogs/dmitrypeleshenko/archive/2009/10/30/8988.aspx</link><description>Если Вы пытаетесь применять WPF не в абсолютно новом, а в прожившем какое-то время проекте, то наверняка столкнетесь с необходимостью взаимодействия между кусочками старого интерфейса на WindowsForms и новым интерфейсом WPF. Так и я некоторое время назад</description><dc:language /><generator>CommunityServer 2.1 (Build: 60809.935)</generator><item><title>re: Взаимодействие WPF и WindowsForms</title><link>http://dev.net.ua/blogs/dmitrypeleshenko/archive/2009/10/30/8988.aspx#8999</link><pubDate>Tue, 03 Nov 2009 10:35:47 GMT</pubDate><guid isPermaLink="false">434e5f47-9beb-46b7-aee2-adf5f643f7c6:8999</guid><dc:creator>RredCat</dc:creator><description>&lt;p&gt;Привіт Дмитро.&lt;/p&gt;
&lt;p&gt;Трішки у вашому вирішені проблеми Thread.Sleep(100); турбує - а що буде, коли гуя довше вантажитиметься? Дозвольте запропонувати своє (але якщо не працюватиме - &amp;nbsp;я не винен :) ) вирішення.&lt;/p&gt;
&lt;p&gt;Спробуйте замість SetFocuToWindowsForms() використати наступний код:&lt;/p&gt;
&lt;p&gt;Dispatcher.BeginInvoke( DispatcherPriority.Loaded, new Func&amp;lt;bool&amp;gt;( windowsFormsControl.Focus ) );&lt;/p&gt;
&lt;p&gt;по теорії виклик Focus() тоді відбудеться після розміщення і відмальовування .. &lt;/p&gt;
&lt;p&gt;Відпишіться будь-ласка чи допомогло.&lt;/p&gt;
&lt;p&gt;ну і посилання на теорію :) :&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://msdn.microsoft.com/en-us/library/ms591206.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms591206.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://msdn.microsoft.com/en-us/library/system.windows.threading.dispatcherpriority.aspx"&gt;http://msdn.microsoft.com/en-us/library/system.windows.threading.dispatcherpriority.aspx&lt;/a&gt;&lt;/p&gt;
</description></item><item><title>re: Взаимодействие WPF и WindowsForms</title><link>http://dev.net.ua/blogs/dmitrypeleshenko/archive/2009/10/30/8988.aspx#9001</link><pubDate>Tue, 03 Nov 2009 21:19:49 GMT</pubDate><guid isPermaLink="false">434e5f47-9beb-46b7-aee2-adf5f643f7c6:9001</guid><dc:creator>Dmitry Peleshenko</dc:creator><description>&lt;p&gt;Ваша правда, Thread.Sleep(100) виглядає просто жахливо, але запропонований вами код на жаль не вирішує проблеми. Вочевидь всі дії з WindowsForms відбуваються вже після розміщення та відмальовування елементів WPF. Це добре видно якщо додати трохи трасування.&lt;/p&gt;
&lt;p&gt;Я розглядав запропонований вами підхід і навіть трохи поекспериментував з DispatcherPriority. Випробовував також декілька підходів з використанням WindowProc в середині WindowsForms контрола. Нічого не допомогло.&lt;/p&gt;
</description></item></channel></rss>