0
的文本菜單(以下this小教程)偉大的工作,直到我纔能有Silverlight應用程序的規模,以適應整個瀏覽器窗口中實現的
標籤在我的XAMLSilverlight 4的文本菜單,並通過Silverlight 4的工具包提供ScaleTransform<RenderTransform
>
當所有偉大的工作,本教程之前,我的XAML看起來像:
<UserControl>
<Grid>
<!-- Rest of app here... -->
</Grid>
</UserControl>
現在,我的應用程序是這樣的:
<UserControl>
<Canvas>
<Canvas.RenderTransform>
<ScaleTransform [vars]></ScaleTransform>
</Canvas.RenderTransform>
<Grid>
<!-- Rest of app here... -->
</Grid>
</Canvas>
</UserControl>
縮放工作完美,但現在當我右鍵單擊時,ContextMenu不會出現在它應該(在鼠標下)的位置。相反,它出現在與鼠標相同的x位置,但它顯示在應用程序的最頂端。這也是非常麻煩的,我必須不斷點擊才能讓它消失,我不能右鍵點擊其他地方再次啓動它,並且它不會隨着應用程序的其他部分一起擴展。
什麼可能導致這種情況?有沒有一種正確的方法去解決這個問題,或者我應該在菜單上應用一個偏移量來將它移動到鼠標上?
我不知道我明白。像這樣? http://pastebin.com/EisCLd5B – Jesse 2011-04-25 23:01:10
@Jesse - 我還沒有檢查你的代碼,但如果你的比例變換是'x * 2'和'y * 3'我想你需要縮放鼠標座標由'x/2'和'y/3'。 – ChrisF 2011-04-26 12:16:27