我从silverlight slide control发现了一个令人兴奋的控制失控
现在我尝试在我的项目中使用它.为了使幻灯片正常工作,我必须将用户控件放在画布上.然后,用户控件自己使用其内容的高度.我只是想改变这种行为,以便将高度设置为父画布的可用空间.
您会看到设置高度的uxborder.如何测量实际高度并将其设置为边框?
我用Height = {Binding Elementname = notificationCanvas,Path = ActualHeight}尝试了它,但是这个依赖属性没有回调,因此永远不会设置actualHeight.
我想要实现的是一个用户控件,就像Jesse Liberty’s blog上的每个例子的tweetboard一样
对不起我的英文写作,我希望你理解我的问题.
<Canvas x:name="notificationCanvas" Background="Red"> <SlIDeEffectEx:SimpleSlIDeControl gripWIDth="20" griptitle="Task" gripHeight="100"> <border x:name="uxborder" borderThickness="2" CornerRadius="5" borderBrush="DarkGray" Background="DarkGray" padding="5" WIDth="300" Height="700" > <StackPanel> <TextBlock Text="Tasks"></TextBlock> <button x:name="btn1" margin="5" Content="{Binding Elementname=Mainborder,Path=Height}"></button> <button x:name="btn2" margin="5" Content="Second button"></button> <button x:name="btn3" margin="5" Content="Third button"></button> <button x:name="btn1_copy" margin="5" Content="First button"/> <button x:name="btn1_copy1" margin="5" Content="First button"/> <button x:name="btn1_copy2" margin="5" Content="First button"/> <button x:name="btn1_copy3" margin="5" Content="First button"/> <button x:name="btn1_copy4" margin="5" Content="First button"/> <button x:name="btn1_copy5" margin="5" Content="First button"/> <button x:name="btn1_copy6" margin="5" Content="First button"/> </StackPanel> </border> </SlIDeEffectEx:SimpleSlIDeControl>解决方法 嘿 – 有几件事:
>我猜它只是一个错字,但是:“{Binding Elementname = Mainborder,Path = Height}”应为“{Binding Elementname = uxborder,Path = Height}”(或ActualHeight)
> SlIDeEffect似乎设置了一个剪辑几何体,这将影响它看起来“大”的程度
RectangleGeometry clipRect = new RectangleGeometry();
clipRect.Rect = new Rect(0,panel.ActualWIDth,host.Height);
host.Clip = clipRect;
如果您从滑动控件中注释掉上面的行,您应该会看到面板外观的显着变化.
总结以上是内存溢出为你收集整理的silverlight – 如何测量具有自动高度和宽度的画布全部内容,希望文章能够帮你解决silverlight – 如何测量具有自动高度和宽度的画布所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)