
[英]Why Silverlight Tab item's Height and width not accessible at runtime?
[英]Change the Width and Height on UserControl at runtime
我需要弄清楚如何在运行时更改UserControl's
Width
和Height
。 我正在尝试在mouseMove
事件中执行此操作。 在XAML
将Width
和Height
设置为Auto
。
'mouseDown event
mouseVerticalPosition = e.GetPosition(Nothing).Y
mouseHorizontalPosition = e.GetPosition(Nothing).X
'mouseMove event
Dim deltaV As Double = e.GetPosition(Nothing).Y - mouseVerticalPosition
Dim deltaH As Double = e.GetPosition(Nothing).X - mouseHorizontalPosition
Me.Width = Me.Width + deltaH
UpdateLayout() 'does not work
这段代码位于UserControl
内部,而不是UserControl
所在的Page
-如果有帮助的话。
考虑容器及其属性-在此处使用自动和拉伸:
<Grid x:Name="LayoutRoot" Background="Transparent" >
<Canvas Name="cnv" Margin="18">
<Rectangle Name="Rect" Margin="0" />
</Canvas>
</Grid>
“ Width
或“ Height
上“ Auto
设置的实际数值为Double.NaN
。 当您向该初始NaN值添加任何内容时,结果将始终仍然是NaN。 您既可以使用ActualWidth
/ ActualHeight
作为要添加的数字,也可以尝试在设置值之前添加Double.IsNaN
检查,如果为true,则只需使用ActualWidth
/ ActualHeight
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.