注:OriginalSize プロパティは情報の提供を目的として公開されているもので、変更はできません。エンドユーザーのアクションの結果生じるサイズをオーバーライドする場合は、NewSize プロパティを使用してください。
Imports Infragistics.Win Imports Infragistics.Win.Layout Imports Infragistics.Win.UltraWinTree Private Sub ultraTree1_AfterNodeLayoutItemResize(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinTree.AfterNodeLayoutItemResizeEventArgs) Handles ultraTree1.AfterNodeLayoutItemResize ' Output a message to the debug window describing the resize operation Dim message As String = String.Empty If (e.IsCell) Then message = "Cell '" + e.Cell.Text + "' was successfully resized." Else message = "The header of column '" + e.Column.TextResolved + "' was successfully resized." End If End Sub Private Sub ultraTree1_BeforeNodeLayoutItemResize(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinTree.BeforeNodeLayoutItemResizeEventArgs) Handles ultraTree1.BeforeNodeLayoutItemResize ' Disallow cell resizing for non-root level nodes If Not e.Node Is Nothing AndAlso e.Node.Level > 0 Then e.Cancel = True Return End If Dim originalSize As Size = Size.Empty ' Determine whether a cell or header was resized If (e.IsLabel) Then originalSize = e.Column.LayoutInfo.PreferredLabelSize Else originalSize = e.Column.LayoutInfo.PreferredCellSize End If ' Determine the amount by which the item was resized Dim delta As Size = New Size(e.NewSize.Width - originalSize.Width, e.NewSize.Height - originalSize.Height) ' Output a message to the debug window describing the resize operation Dim message As String = String.Empty If (e.IsCell) Then message = "Cell '" + e.Cell.Text + "' is being resized by " + delta.Width.ToString() + " units horizontally and " + delta.Height.ToString() + " units vertically." Else message = "The header of column '" + e.Column.TextResolved + "' is being resized by " + delta.Width.ToString() + " units horizontally and " + delta.Height.ToString() + " units vertically." End If Debug.WriteLine(message) End Sub
using Infragistics.Win; using Infragistics.Win.Layout; using Infragistics.Win.UltraWinTree; using System.Diagnostics; private void ultraTree1_AfterNodeLayoutItemResize(object sender, Infragistics.Win.UltraWinTree.AfterNodeLayoutItemResizeEventArgs e) { // Output a message to the debug window describing the resize operation string message = string.Empty; if ( e.IsCell ) message = "Cell '" + e.Cell.Text + "' was successfully resized."; else message = "The header of column '" + e.Column.TextResolved + "' was successfully resized."; } private void ultraTree1_BeforeNodeLayoutItemResize(object sender, Infragistics.Win.UltraWinTree.BeforeNodeLayoutItemResizeEventArgs e) { // Disallow cell resizing for non-root level nodes if ( e.Node != null && e.Node.Level > 0 ) { e.Cancel = true; return; } Size originalSize = Size.Empty; // Determine whether a cell or header was resized if ( e.IsLabel ) originalSize = e.Column.LayoutInfo.PreferredLabelSize; else originalSize = e.Column.LayoutInfo.PreferredCellSize; // Determine the amount by which the item was resized Size delta = new Size( e.NewSize.Width - originalSize.Width, e.NewSize.Height - originalSize.Height ); // Output a message to the debug window describing the resize operation string message = string.Empty; if ( e.IsCell ) message = "Cell '" + e.Cell.Text + "' is being resized by " + delta.Width.ToString() + " units horizontally and " + delta.Height.ToString() + " units vertically."; else message = "The header of column '" + e.Column.TextResolved + "' is being resized by " + delta.Width.ToString() + " units horizontally and " + delta.Height.ToString() + " units vertically."; Debug.WriteLine( message ); }