本文整理匯總了C#中Windows.UI.Xaml.Controls.Canvas.Measure方法的典型用法代碼示例。如果您正苦於以下問題:C# Canvas.Measure方法的具體用法?C# Canvas.Measure怎麽用?C# Canvas.Measure使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Windows.UI.Xaml.Controls.Canvas
的用法示例。
在下文中一共展示了Canvas.Measure方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: MeasureOverride
protected override Size MeasureOverride( Size availableSize )
{
if ( Days == null )
{
return availableSize;
}
Children.Clear();
_arrangeSizes.Clear();
var minMax = GetHourBoundaries( Days );
_minHour = minMax.Item1;
_maxHour = minMax.Item2;
var hoursGrid = CreateHoursGrid();
Children.Add( hoursGrid );
hoursGrid.Measure( new Size( HoursGridWidth, availableSize.Height ) );
_arrangeSizes.Add( hoursGrid, new Rect( 0, 0, HoursGridWidth, availableSize.Height ) );
var displayedDays = Day == null ? Days : new[] { Day };
double canvasWidth = ( availableSize.Width - HoursGridWidth ) / displayedDays.Length;
for ( int n = 0; n < displayedDays.Length; n++ )
{
var canvas = new Canvas();
var size = new Size( canvasWidth, availableSize.Height );
AddPlaceholdersToCanvas( canvas, size );
AddPeriodsToCanvas( canvas, size, displayedDays[n] );
Children.Add( canvas );
canvas.Measure( size );
_arrangeSizes.Add( canvas, new Rect( Math.Floor( HoursGridWidth + canvasWidth * n ), 0, canvasWidth, availableSize.Height ) );
}
return availableSize;
}