2

Silverlight Web アプリケーションで XAML ファイルを使用しています。JavaScript を使用して xaml ファイルを操作し、イベントに応答しています。グラフに楕円要素のリストがあり、そのうちの 1 つをクリックすると、楕円の塗りつぶしが別の色に設定され、スタイルで設定された塗りつぶしが上書きされます。

したがって、楕円をクリックすると、効果的に次のようになります。

<Ellipse x:Name="g46" Style="{StaticResource GainValue}" Canvas.Top="136" Canvas.Left="766" MouseLeftButtonUp="onDotClicked" Fill="Red" />

2 番目の楕円をクリックすると、最初にクリックした楕円の色をリセットしたいと思います。残念ながら、Javascript を使用して Ellipse (またはその他の) 要素に属する属性を削除する方法がわかりません。dot.removeAttribute('Fill')属性を null に設定すると、Ellipse に空の文字列が割り当てられます。私は成功した場合と失敗した場合の 6 つのバリエーションを試しましたdot['Fill'].remove

私は基本的に、JavaScript で xaml オブジェクトを操作するために使用する必要がある構文について理解していません。DOM 構文などを説明しているリファレンス ページをいくつか見つけましたが、ここで実際に使用できる構文に対応するものはありません。

4

1 に答える 1

2

最善の策は、おそらくjQueryを使用してXAMLをXMLとしてロードすることです。

できるよ

var xamlDocument = getYourXaml(); // Implement this or replace with however you're getting the XAML
var xml = $(xamlDocument);
xml.removeAttr('Fill');

//If you need to save your XAML do it here, if it's part of the page it should just work.

詳細: http: //api.jquery.com/jQuery.parseXML/

于 2012-05-22T16:57:05.717 に答える