[Silverlight] コード側から生成するStoryBoardでRenderTransformの値を変化させる例

9:45 PM on 2011年3月24日 , ,

(XAML) <Button x:Name=”button” RenderTransformOrigin=”0.5,0.5″> <Button.RenderTransform> <TransformGroup> <ScaleTransform/> <SkewTransform/> <RotateTransform/> <TranslateTransform/> </TransformGroup> </Button.RenderTransform> </Button> (C#) // ボタンが上から下に移動するStoryboard private void CreateStoryboard() { Storyboard sb = new Storyboard(); DoubleAnimation animationTransformY = new DoubleAnimation() { Duration = TimeSpan.FromSeconds(2.0), From = -30.0, To = 0.0, EasingFunction = new BackEase() { Amplitude = 1, EasingMode = EasingMode.EaseInOut, } }; // DoubleAnimationに対象のオブジェクトを設定 [...]

インストールされているSilverlightのバージョンをJavaScriptで取得

10:42 PM on 2011年2月24日 ,

function getSilverlightVersion() { var version = 0; try { var plugin = navigator.plugins["Silverlight Plug-In"]; if (plugin) { version = parseInt(plugin.description); } else { var agControl = new ActiveXObject(“AgControl.AgControl”); if (agControl != null) { var i = 1; while (true) { if (agControl.IsVersionSupported(i + “.0″)) { version = i; i++; } else { break; } } [...]

[Silverlight] DependencyPropertyの登録方法

7:41 PM on 2010年12月10日 ,

public class MyClass : DependencyObject { public MyClass() { } public string Test { get { return (string)GetValue(TestProperty); } set { SetValue(TestProperty, value); } } public static readonly DependencyProperty TestProperty = DependencyProperty.Register(“Test”, typeof(string), typeof(MyClass), new PropertyMetadata(“”)); } (参考) http://msdn.microsoft.com/ja-jp/library/system.windows.dependencyproperty.register%28VS.80%29.aspx

[Silverlight] マウスホイールイベントを取得

7:38 PM ,

public MainPage() { InitializeComponent(); HtmlPage.Window.AttachEvent(“DOMMouseScroll”, OnMouseWheel); HtmlPage.Window.AttachEvent(“onmousewheel”, OnMouseWheel); HtmlPage.Document.AttachEvent(“onmousewheel”, OnMouseWheel); } private void OnMouseWheel(object sender, HtmlEventArgs args) { ScriptObject e = args.EventObject; if (e.GetProperty(“wheelDelta”) != null) { // IE・Opera } else if (e.GetProperty(“detail”) != null) { // Mozilla・Safari } }

[Silverlight] コード側からStoryBoardを生成

7:34 PM ,

// ボタンを拡大表示するStoryboard生成 private void CreateStoryboard(Button btn) { Storyboard sb = new Storyboard(); // 幅変更DoubleAnimation DoubleAnimation animationWidth = new DoubleAnimation() { Duration = TimeSpan.FromSeconds(1.0), From = 50.0, To = 100.0, EasingFunction = new BackEase() { Amplitude = 1, EasingMode = EasingMode.EaseInOut, } }; // 高さ変更DoubleAnimation DoubleAnimation animationHeight = new DoubleAnimation() { Duration = TimeSpan.FromSeconds(1.0), From = [...]

[Silverlight] Expression Blend 3でStoryBoardのEasingFunctionを設定

10:39 PM on 2010年12月9日

StoryBoardを作成 ↓ キーフレームを選択 ↓ [プロパティ] – [イージング] – [EasingFunction] から選択

[Silverlight] 線形グラデーションの方向

10:38 PM ,

左上→右下(デフォルト) <LinearGradientBrush StartPoint=”0,0″ EndPoint=”1,1″> 右下→左上 <LinearGradientBrush EndPoint=”0,0″ StartPoint=”1,1″> 上→下 <LinearGradientBrush EndPoint=”0.5,1″ StartPoint=”0.5,0″> 下→上 <LinearGradientBrush EndPoint=”0.5,0″ StartPoint=”0.5,1″> 右→左 <LinearGradientBrush EndPoint=”0,0.5″ StartPoint=”1,0.5″> 左→右 <LinearGradientBrush EndPoint=”1,0.5″ StartPoint=”0,0.5″>

Silverlightプラグインリサイズ時のイベントハンドラ設定

9:24 PM on 2010年12月8日 ,

// コンストラクタ public Page() { InitializeComponent(); App.Current.Host.Content.Resized += new EventHandler(Content_Resized); } // Silverlightプラグインリサイズ時のイベントハンドラ private void Content_Resized(object sender, EventArgs e) { // リサイズ後の幅 double resizedWidth = App.Current.Host.Content.ActualWidth; // リサイズ後の高さ double resizedHeight = App.Current.Host.Content.ActualHeight; }

3 / 3123