<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://xceed.com/CS/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>Search results matching tag 'Binding'</title><link>http://xceed.com/CS/search/SearchResults.aspx?o=DateDescending&amp;tag=Binding&amp;orTags=0</link><description>Search results matching tag 'Binding'</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP2 (Debug Build: 61120.2)</generator><item><title>MasterDetail example question</title><link>http://xceed.com/CS/forums/post/32479.aspx</link><pubDate>Tue, 31 Jul 2012 23:45:06 GMT</pubDate><guid isPermaLink="false">14592c03-f9d0-4f6b-b4cd-71e0e1b1f679:32479</guid><dc:creator>Ken</dc:creator><description>&lt;p&gt;I've been trying to build a Master/Detail grid using the example but without the sources for the NorthWind database or the access functions (specifically&amp;nbsp;SampleData.DataProvider.GetNorthwindDataSet()), I am unable to figure out how.&lt;/p&gt;&lt;p&gt;&amp;nbsp;In the example, gridcontrol1 is bound to "Shippers" which I expect is a table name.&lt;/p&gt;&lt;p&gt;However, detailGridTemplate is bound to "Shippers.ShippersOrders".&lt;/p&gt;&lt;p&gt;What exactly is "Shippers.ShippersOrders", a view, a relation?&lt;/p&gt;&lt;p&gt;I know the MasterDetail sample correctly reduces the detail to only those belonging to the parent row, but the example does not expose how this happens. Any hints would be helpful.&lt;/p&gt;&lt;p&gt;&amp;nbsp;Also, is it possible to get the NorthWind database access functions used in the examples?&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;	&lt;/span&gt;Ken Gilbert&amp;nbsp;&lt;/p&gt;</description></item><item><title>How to make some cells in datagrid Readonly?</title><link>http://xceed.com/CS/forums/post/32231.aspx</link><pubDate>Mon, 11 Jun 2012 07:54:22 GMT</pubDate><guid isPermaLink="false">14592c03-f9d0-4f6b-b4cd-71e0e1b1f679:32231</guid><dc:creator>Arthur</dc:creator><description>&lt;p&gt;Hi All,&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I am trying to make some cells in datagrid to be readonly but not the whole column nor the whole row. The datacontext of each item is bound to an entity that has a IsReadOnly property.&lt;/p&gt;</description></item><item><title>How Can I Set the Background Color of Multiple Cells in a Row based on the Value of another Cell in the Same Row?</title><link>http://xceed.com/CS/forums/post/31964.aspx</link><pubDate>Mon, 09 Apr 2012 21:08:01 GMT</pubDate><guid isPermaLink="false">14592c03-f9d0-4f6b-b4cd-71e0e1b1f679:31964</guid><dc:creator>Jordan</dc:creator><description>&lt;p&gt;Hello. &amp;nbsp;How can I set the background color of multiple cells in a row based on the value of a separate cell in the same row? &amp;nbsp;I figured out a round-about way to set the background of one cell in a row based on another cell in a row, but my solution doesn't work for setting multiple cells in a row. &amp;nbsp;Here is my solution:&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;xcdg:Column FieldName="." Title="Sales"&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;xcdg:Column.CellContentTemplate&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;DataTemplate&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;TextBlock x:Name="txtSales" Text="{Binding Path=Sales}"/&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;DataTemplate.Triggers&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;DataTrigger Binding="{Binding IsTop}" Value="True"&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;Setter TargetName="txtSales" Property="Background" Value="Yellow"/&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/DataTrigger&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/DataTemplate.Triggers&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/DataTemplate&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/xcdg:Column.CellContentTemplate&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;/xcdg:Column&amp;gt;&lt;/p&gt;&lt;p&gt;I have a column called "Sales". &amp;nbsp;I want the background of my "Sales" column to be yellow if the value of "IsTop" is true. &amp;nbsp;This code works. &amp;nbsp;It's not an ideal solution* but it works in this case&lt;/p&gt;&lt;p&gt;My problem is that this solution doesn't work if I try to use it with multiple columns. &amp;nbsp;If I add another column with a data template similar to what I have above, I will get an exception that says that I can't add multiple columns to the column collection with the same FieldName. &amp;nbsp;My solution relies on me being able to set the column's FieldName to a period (.). &amp;nbsp;I can't have multiple columns with FieldNames set to a period (.).&lt;/p&gt;&lt;p&gt;Is there a better way to set the background color of a cell based on the value of another cell in the same row? &amp;nbsp;Can I somehow use a binding to get the parent row of a cell? &amp;nbsp;I tried using the Ancestor syntax, but I can't figure out how to get the code to recognize that the parent object is a DataRowView. &amp;nbsp;I naively tried to set a binding path to "../IsTop" hoping that the binding uses a Unix-like syntax, but that didn't work. &amp;nbsp;Thanks.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;* The reason I say that this solution is not ideal is that it breaks the copy-and-paste action. &amp;nbsp;If I select the whole grid and copy-and-paste it into Notepad, all of the values of my "Sales" column will be "System.Data.DataRowView" rather than the actual value of the Sales column in that row. &amp;nbsp;I'm binding my datagrid to a System.Data.DataTable.&lt;/p&gt;</description></item><item><title>How to filter a multi-valued column?</title><link>http://xceed.com/CS/forums/post/31816.aspx</link><pubDate>Thu, 08 Mar 2012 10:45:25 GMT</pubDate><guid isPermaLink="false">14592c03-f9d0-4f6b-b4cd-71e0e1b1f679:31816</guid><dc:creator>thomas</dc:creator><description>&lt;p&gt;Hi. Is there an example available that shows how to implement filtering on a column that allows multiple values (is bound to a Collection)?&lt;/p&gt;&lt;p&gt;Say I have a grid that shows events, where each event can have multiple speakers. A column titled "Speaker" would be rendered as a ListBox, per each row. &lt;/p&gt;&lt;p&gt;I would like to get the filter row to work with the multi-valued speaker column, so a user can enter "Scott" and see only the rows where Scott is a speaker. And/or get the Excel-like filtering to work with the column as well (the drop-down filtering option).&lt;/p&gt;&lt;p&gt;All the examples I have found so far have been with single-valued columns.&amp;nbsp;&lt;/p&gt;</description></item><item><title>Programmatically Binding to a StatContext</title><link>http://xceed.com/CS/forums/post/31676.aspx</link><pubDate>Mon, 13 Feb 2012 22:51:19 GMT</pubDate><guid isPermaLink="false">14592c03-f9d0-4f6b-b4cd-71e0e1b1f679:31676</guid><dc:creator>Bryan</dc:creator><description>&lt;P&gt;I'm having trouble writing the following Binding expression equivalent in C#:&lt;/P&gt;
&lt;P&gt;{Binding Path=(xcdg:DataGridControl.StatContext).ResultPropertyNameHere, RelativeSource={RelativeSource Self}, Converter={StaticResource ValueToBrushConverter}}&lt;/P&gt;
&lt;P&gt;The constructor for System.Windows.PropertyPath allows for providing "path" and "pathParameters", which I believe is the overload I need to use. However, I cannot determine how to provide the equivalent path above, or "(xcdg:DataGridControl.StatContext).ResultPropertyNameHere".&lt;/P&gt;
&lt;P&gt;Another constructor overload of PropertyPath allows for providing a dependency property. Perhaps this is the route to follow? I can pass DataGridControl.StatContextProperty to this constructor overload, however how do I specify the "ResultPropertyName"?&lt;/P&gt;
&lt;P&gt;Background:&amp;nbsp; I am binding a DataTable to the data grid and taking advantage of the data grid's ability to automatically generate columns. I&amp;nbsp;would like to add a&amp;nbsp;StatRow whose StatCells are added at runtime. The StatCells are added at runtime, because the FieldNames are not known at design time. Ultimately, the purpose of the binding expression above&amp;nbsp;is to color the foreground of a StatCell, depending on the StatCell value (e.g. Green if the value is positive).&lt;/P&gt;</description></item><item><title>Re: DataGridCollectionViewSource and DataGridGroupDescription with objects</title><link>http://xceed.com/CS/forums/post/31480.aspx</link><pubDate>Tue, 20 Dec 2011 16:52:12 GMT</pubDate><guid isPermaLink="false">14592c03-f9d0-4f6b-b4cd-71e0e1b1f679:31480</guid><dc:creator>Simone</dc:creator><description>&lt;p&gt;Any help on this please? It is quite urgent.&lt;/p&gt;&lt;p&gt;The only workaround I have found is, in the view model, check the objects and replace them with a single one when the undelying value is the same... but it is not very good if I have to do this for each column &lt;img src="http://xceed.com/CS/emoticons/emotion-6.gif" alt="Sad" /&gt;&lt;/p&gt;</description></item><item><title>Not able to update after binding with xml</title><link>http://xceed.com/CS/forums/post/31161.aspx</link><pubDate>Thu, 06 Oct 2011 18:14:26 GMT</pubDate><guid isPermaLink="false">14592c03-f9d0-4f6b-b4cd-71e0e1b1f679:31161</guid><dc:creator>Kunal</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;&lt;p&gt;I have a datagridcontrol which i bind to xml. But don't know why, i am not able to edit it once i bind it to xml. I was able to edit it and it worked fine if i used datagridcollectionview. Does any one of you have any idea as to whats wrong.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I want to bind the grid with the xml which i get from the server. Once the user updates something on the grid..i send a string back to the server...which fetched me another xml to be ind with the same grid. &lt;/p&gt;&lt;p&gt;&amp;nbsp;Also, i am doing everything code behind. I just have datagridcontrol in my xaml (page).&lt;/p&gt;&lt;p&gt;Can any body pls guide me as to what to do....if i am on the 15th row, i don;t want the whole grid to refresh and take me back to the first row.&lt;/p&gt;&lt;p&gt;Thanks&lt;/p&gt;&lt;p&gt;Kunal&amp;nbsp;&lt;/p&gt;</description></item><item><title>How To Add Excel Like Selection of DataCells In Xceed DataGridControl</title><link>http://xceed.com/CS/blogs/techside/archive/2011/09/27/how-to-add-excel-like-selection-of-datacells-in-xceed-datagridcontrol.aspx</link><pubDate>Wed, 28 Sep 2011 00:45:00 GMT</pubDate><guid isPermaLink="false">14592c03-f9d0-4f6b-b4cd-71e0e1b1f679:31104</guid><dc:creator>Michel [Xceed]</dc:creator><description>&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;Recently, we had a question here at technical support asking if we had "&lt;b&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';"&gt;&lt;a target="_blank" href="http://download3.xceedsoft.com/packages/Temp/TechSideBlogs/michel/ExcelLikeSelectionDataGrid.zip"&gt;Excel Like Selection of DataCells&lt;/a&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;".&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;Well... we don't! When &lt;i style="mso-bidi-font-style:normal;"&gt;SelectionUnit&lt;/i&gt; is set to &lt;i style="mso-bidi-font-style:normal;"&gt;Cell&lt;/i&gt; on &lt;i style="mso-bidi-font-style:normal;"&gt;DataGridControl&lt;/i&gt; it is possible to make your selection on a cell-by-cell basis and to select multiple cells at once by Shift Clicking but still, that is not what some clients expect, especially if they are used to an Excel-like selection. That is, clicking on one cell, holding down the mouse key and as you move the mouse around, the cells in the rectangle formed by the clicked cell and the current location of the mouse should dynamically become selected and the content should scroll as you move your mouse to the edges of the &lt;i style="mso-bidi-font-style:normal;"&gt;DataGridControl&lt;/i&gt; .&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;But of course, nothing is impossible! This behavior can be achieved but it requires a little extra&amp;nbsp;work.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;This post will show how to customize the&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';FONT-WEIGHT:normal;mso-bidi-font-weight:bold;"&gt;DataGridControl&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;in order to add this functionality. The &lt;a href="http://download3.xceedsoft.com/packages/Temp/TechSideBlogs/michel/ExcelLikeSelectionDataGrid.zip"&gt;demo application&lt;/a&gt;&amp;nbsp;is provided below.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;First thing we need to do is to create a custom&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';FONT-WEIGHT:normal;mso-bidi-font-weight:bold;"&gt;DataGridControl&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;, in this post I will name my class&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';FONT-WEIGHT:normal;mso-bidi-font-weight:bold;"&gt;ExelSelectionDataGrid&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;span class="apple-converted-space"&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/span&gt;which&amp;nbsp;inherits from &lt;i style="mso-bidi-font-style:normal;"&gt;DataGridControl&lt;/i&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;We will keep a reference to the first clicked cell and the cell that lies under the mouse as the mouse moves. We will then dynamically calculate and add the ranges of cells that lie in the rectangle bounded by the first clicked cell and the cell beneath the mouse to the&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';FONT-WEIGHT:normal;mso-bidi-font-weight:bold;"&gt;SelectedCellRanges&lt;/span&gt;&lt;/b&gt;&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;collection of the datagrid instance.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;For that, we would need to override the following:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;OnPreviewMouseLeftButtonDown&lt;/span&gt;&lt;/i&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;In order to get the keep track of the first clicked cell&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;OnPreviewMouseMove&lt;/span&gt;&lt;/i&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;where we get the cell that is currently under the mouse, find the ranges between the first cell and the current cell and update the selected ranges, and finally scroll the &lt;i style="mso-bidi-font-style:normal;"&gt;DataGridControl&lt;/i&gt;&amp;nbsp;if we are close to any of the&amp;nbsp;edges if possible.&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;OnPreviewMouseLeftButtonUp only to set our selection flag to false.&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;Getting the cell under the mouse can easily be acheived by using the VisualTreeHelperClass. This is how I used it:&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:black;FONT-SIZE:9pt;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;private&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;DataCell&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;getDataCellUnderMouse(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;MouseEventArgs&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HitTestResult&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;result =&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;VisualTreeHelper&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;.HitTest(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;, e.MouseDevice.GetPosition(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;));&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;DependencyObject&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;obj = result.VisualHit;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;var&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;ctype =&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;typeof&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;DataCell&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;if&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;(obj !=&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;null&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;var&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;otype = obj.GetType();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;while&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;(obj !=&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;null&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;amp;&amp;amp; (obj&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;as&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;DataCell&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;) ==&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;null&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;obj =&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;VisualTreeHelper&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;.GetParent(obj);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;return&lt;/span&gt;&lt;span class="apple-converted-space"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;obj as&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;DataCell&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0.7pt;"&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&amp;nbsp;Manually scrolling the datagrid would require access to the scroll viewer, this can be reached through the following:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;ScrollViewer&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;sv = (&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#2b91af;FONT-SIZE:9pt;"&gt;ScrollViewer&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;)&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;.Template.FindName(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#a31515;FONT-SIZE:9pt;"&gt;"PART_ScrollViewer"&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;,&lt;span class="apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:blue;FONT-SIZE:9pt;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;);&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;So this is&amp;nbsp;the entire class:&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; System;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; System.Collections.Generic;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; System.Linq;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; System.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; Xceed.Wpf.DataGrid;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; System.Windows;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; System.Windows.Controls;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; System.Windows.Input;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; System.Diagnostics;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; System.Windows.Media;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;using&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; Xceed.Wpf.DataGrid.Views;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;namespace&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; ExcelLikeSelectionDataGrid&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;class&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;ExelSelectionDataGrid&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; : &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;DataGridControl&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;public&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; ExelSelectionDataGrid()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.Loaded += &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;new&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;RoutedEventHandler&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;(CustomDataGridControl_Loaded);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;void&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; CustomDataGridControl_Loaded(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;object&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; sender, &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;RoutedEventArgs&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;sv = (&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;ScrollViewer&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;)&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.Template.FindName(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#a31515;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;"PART_ScrollViewer"&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;, &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;ScrollViewer&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; sv;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;int&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; firstItemIndex;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;int&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; secondItemIndex;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;int&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; firstColumnIndex;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;int&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; secondColumnIndex;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;protected&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;override&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;void&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; OnPreviewMouseMove(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;MouseEventArgs&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;base&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.OnPreviewMouseMove(e);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;if&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; (isSelecting)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;DataCell&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; cellUnderMouse = getDataCellUnderMouse(e);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;if&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; (cellUnderMouse != &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;null&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;int&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; columnIndex = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.Columns[cellUnderMouse.FieldName].VisiblePosition;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;int&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; itemIndex = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.Items.IndexOf(cellUnderMouse.DataContext);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;if&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; ((columnIndex != secondColumnIndex || itemIndex != secondItemIndex) &amp;amp;&amp;amp; columnIndex &amp;gt;= 0 &amp;amp;&amp;amp; itemIndex &amp;gt;= 0)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;secondColumnIndex = columnIndex;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;secondItemIndex = itemIndex;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;UpdateSelection();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;Point&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; mousePosition = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;Mouse&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.GetPosition(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;if&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; (mousePosition.Y &amp;gt; (&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.ActualHeight - 10))&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;double&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; calculatedVerticalOffset = sv.VerticalOffset + 3 * (&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.View &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;as&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;TableflowView&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;).ContainerHeight; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;sv.ScrollToVerticalOffset(calculatedVerticalOffset);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;if&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; (mousePosition.X &amp;gt; (&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.ActualWidth - 10))&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;double&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; calculatedHorizontalOffset = sv.HorizontalOffset + 3 * 50.0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;sv.ScrollToHorizontalOffset(calculatedHorizontalOffset);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;if&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; (mousePosition.Y &amp;lt; (10))&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;double&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; calculatedVerticalOffset = sv.VerticalOffset - 3 * (&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.View &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;as&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;TableflowView&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;).ContainerHeight;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;sv.ScrollToVerticalOffset(calculatedVerticalOffset);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;if&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; (mousePosition.X &amp;lt; 10)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;double&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; calculatedHorizontalOffset = sv.HorizontalOffset - 3 * 50.0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;sv.ScrollToHorizontalOffset(calculatedHorizontalOffset);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;protected&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;override&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;void&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; OnPreviewMouseLeftButtonDown(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;MouseButtonEventArgs&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;base&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.OnPreviewMouseRightButtonDown(e);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;DataCell&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; clickedCell = getDataCellUnderMouse(e);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;if&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; (clickedCell != &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;null&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;isSelecting = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;true&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;firstColumnIndex = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.Columns[clickedCell.FieldName].VisiblePosition;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;firstItemIndex = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.Items.IndexOf(clickedCell.DataContext);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;protected&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;override&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;void&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; OnPreviewMouseLeftButtonUp(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;MouseButtonEventArgs&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;isSelecting = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;false&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;private&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;void&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; UpdateSelection()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;if&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; (!(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;Keyboard&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.Modifiers == &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;ModifierKeys&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.Shift))&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.SelectedCellRanges.Clear();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.SelectedCellRanges.Add(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;new&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;SelectionCellRange&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;(firstItemIndex, firstColumnIndex, secondItemIndex, secondColumnIndex));&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;bool&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; isSelecting = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;false&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;private&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;DataCell&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; getDataCellUnderMouse(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;MouseEventArgs&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;HitTestResult&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; result = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;VisualTreeHelper&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.HitTest(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;, e.MouseDevice.GetPosition(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;this&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;));&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;DependencyObject&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; obj = result.VisualHit;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;var&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; ctype = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;typeof&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;(&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;DataCell&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;if&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; (obj != &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;null&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;var&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; otype = obj.GetType();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;while&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; (obj != &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;null&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &amp;amp;&amp;amp; (obj &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;as&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;DataCell&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;) == &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;null&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;obj = &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;VisualTreeHelper&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;.GetParent(obj);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;return&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; obj &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:blue;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;as&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#2b91af;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;DataCell&lt;/span&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="LINE-HEIGHT:normal;MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 10pt;" class="MsoNormal"&gt;&lt;span style="LINE-HEIGHT:115%;FONT-FAMILY:'Courier New';COLOR:#353535;FONT-SIZE:9pt;mso-no-proof:yes;"&gt;}&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family:Calibri;font-size:12px;line-height:13px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;I will not go through the code details here. It should be straightforward to understand once you look at it. You can download a sample application &lt;a target="_blank" href="http://download3.xceedsoft.com/packages/Temp/TechSideBlogs/michel/ExcelLikeSelectionDataGrid.zip"&gt;here&lt;/a&gt;. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;&lt;/span&gt;&lt;span style="FONT-FAMILY:'Arial','sans-serif';BACKGROUND:white;COLOR:#353535;FONT-SIZE:9pt;"&gt;Please, add your comments and suggestions below. Let me know if you find a better way to acheive this or if you find any bugs in my code ;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 10pt;" class="MsoNormal"&gt;&lt;span style="LINE-HEIGHT:115%;FONT-SIZE:9pt;"&gt;&lt;o:p&gt;&lt;font face="Calibri"&gt;&amp;nbsp;&lt;/font&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;</description></item><item><title>Exception &amp;quot;Child list for field RelationParentChild cannot be created&amp;quot; in SetDataBinding on DetailGrid</title><link>http://xceed.com/CS/forums/post/31069.aspx</link><pubDate>Wed, 21 Sep 2011 12:30:05 GMT</pubDate><guid isPermaLink="false">14592c03-f9d0-4f6b-b4cd-71e0e1b1f679:31069</guid><dc:creator>Dietmar</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I encountered some strange behaviour on the Xceed Gridcontrol for Windows Forms&amp;nbsp; (v3.9), trying to implement a databound master detail&lt;/p&gt;&lt;p&gt;grid. I setup and loaded two datatables in a dataset with an additional Parent-Child-Relationship between these two tables added to the&lt;/p&gt;&lt;p&gt;dataset. The relation has been tested, there is no problem in navigating the parent-child relationship (e.g. by calling DataRow.GetChildRows,&lt;/p&gt;&lt;p&gt;using this relation).&lt;/p&gt;&lt;p&gt;When establishing the databinding in the detailgrid, an exception is thrown: "Child list for field RelationParentChild cannot be created" &lt;/p&gt;&lt;p&gt;The actual code looks like this:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;gridControl.BeginInit();&lt;/p&gt;&lt;p&gt;gridControl.SetDataBinding(dataTableParent, "");&lt;/p&gt;&lt;p&gt;// additional code to setup grid&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;DetailGrid detailGrid = new DetailGrid();&lt;/p&gt;&lt;p&gt;// additional code to setup detail grid&lt;/p&gt;&lt;p&gt;&amp;nbsp;gridControl.Add(detailGrid);&lt;/p&gt;&lt;p&gt;detailGrid.SetDataBinding(dataTableChild, relationName); // here exception occurs&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I read related postings to this problem, but none seems to address this special issue, as the databinding&lt;/p&gt;&lt;p&gt;should be complete here.&lt;/p&gt;&lt;p&gt;Any ideas on this strange behaviour?&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Thanks!&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Dietmar &lt;br&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>Setting a row trigger in XAML causes an exception when setting the underlying DataGridCollectionViewSource.Source property.</title><link>http://xceed.com/CS/forums/post/30996.aspx</link><pubDate>Thu, 08 Sep 2011 11:51:30 GMT</pubDate><guid isPermaLink="false">14592c03-f9d0-4f6b-b4cd-71e0e1b1f679:30996</guid><dc:creator>Avrohom</dc:creator><description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;I wanted to set a MouseDoubleClick trigger on the rows of my DataGrid. As:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Style TargetType="{x:Type xcdg:DataRow}" &amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;EventSetter Event="MouseDoubleClick" Handler="OnRowMouseDoubleClick" /&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/Style&amp;gt; &lt;BR&gt;&lt;/P&gt;
&lt;P&gt;What happens is: In the code behind (in the Window_Loaded handler) when I set the DataGridCollectionViewSource.Source = Me.CustomerData, to which the DataGrid is binded to (XAML ItemsSource="{Binding}" (The container's DataContext=&lt;FONT color=#0000ff size=2 face=Consolas&gt;&lt;FONT color=#0000ff size=2 face=Consolas&gt;&lt;FONT color=#0000ff size=2 face=Consolas&gt;"{&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2 face=Consolas&gt;&lt;FONT color=#a31515 size=2 face=Consolas&gt;&lt;FONT color=#a31515 size=2 face=Consolas&gt;StaticResource&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2 face=Consolas&gt;&lt;FONT color=#ff0000 size=2 face=Consolas&gt;&lt;FONT color=#ff0000 size=2 face=Consolas&gt; CustomerViewSource&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2 face=Consolas&gt;&lt;FONT color=#0000ff size=2 face=Consolas&gt;&lt;FONT color=#0000ff size=2 face=Consolas&gt;})&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;, &amp;nbsp;I get the following exception:&lt;/P&gt;
&lt;P&gt;System.InvalidOperationException occurred&lt;BR&gt;&amp;nbsp; Message=Items collection must be empty before using ItemsSource.&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;If I do comment out the above XAML lines, then everything works fine.&lt;/P&gt;
&lt;P&gt;Is it a bug? What other approach is available to handle Row MouseDoubleClick's?&lt;/P&gt;
&lt;P&gt;Any comment please?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;A Singer&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description></item></channel></rss>