Windows ストア アプリおよび Windows ランタイムのための .NET Framework サポート.NET Framework Support for Windows Store Apps and Windows Runtime

.NET Framework 4.5 では、さまざまな Windows ランタイムでのソフトウェア開発シナ リオをサポートします。The .NET Framework 4.5 supports a number of software development scenarios with the Windows Runtime. これらのシナリオは次の 3 つのカテゴリに分類されます。These scenarios fall into three categories:

このトピックでは、サポート、.NET Framework が 3 つのカテゴリのすべての提供し、Windows ランタイム コンポーネント用シナリオについて説明しますがについて説明します。This topic outlines the support that the .NET Framework provides for all three categories, and describes the scenarios for Windows Runtime Components. 最初のセクションでは、.NET Framework と、Windows ランタイム間のリレーションシップに関する基本情報が含まれていて、ヘルプ システムや、IDE で発生する可能性が奇妙な動作を説明します。The first section includes basic information about the relationship between the .NET Framework and the Windows Runtime, and explains some oddities you might encounter in the Help system and the IDE. 2 番目のセクションWindows ランタイム コンポーネントを開発するためのシナリオについて説明します。The second section discusses scenarios for developing Windows Runtime Components.

基本事項The Basics

.NET Framework が提供することによって、前述の 3 つの開発シナ リオをサポートしているWindows 8.x ストア アプリ用 .NET.NET for Windows 8.x Store apps、および Windows ランタイム自体をサポートすることで。The .NET Framework supports the three development scenarios listed earlier by providing Windows 8.x ストア アプリ用 .NET.NET for Windows 8.x Store apps, and by supporting the Windows Runtime itself.

  • .NET framework と Windows ランタイム名前空間、.NET Framework クラス ライブラリの簡素化されたビューを示し、型と作成に使用できるメンバーのみを含めるWindows 8.x ストアWindows 8.x Storeアプリと Windows ランタイム コンポーネントです。.NET Framework and Windows Runtime namespaces provides a streamlined view of the .NET Framework class libraries and include only the types and members you can use to create Windows 8.x ストアWindows 8.x Store apps and Windows Runtime Components.

    • Visual Studio (Visual Studio 2012 またはそれ以降) を使用して開発するときに、Windows 8.x ストアWindows 8.x Store参照アセンブリのセットにより、関連する型とメンバーのみが表示されるアプリまたは Windows ランタイム コンポーネントでします。When you use Visual Studio (Visual Studio 2012 or later) to develop a Windows 8.x ストアWindows 8.x Store app or a Windows Runtime component, a set of reference assemblies ensures that you see only the relevant types and members.

    • この合理化された API セットを簡単にさらに、.NET Framework 内で重複した、または Windows ランタイムを重複した機能の削除によって機能します。This streamlined API set is simplified further by the removal of features that are duplicated within the .NET Framework or that duplicate Windows Runtime features. たとえば、コレクションの型のジェネリック バージョンのみが含まれているし、XML ドキュメント オブジェクト モデルは、Windows ランタイムの XML API を優先して除去を設定します。For example, it contains only the generic versions of collection types, and the XML document object model is eliminated in favor of the Windows Runtime XML API set.

    • Windows ランタイムがマネージ コードから呼び出す簡単なため、単にオペレーティング システムの API をラップする機能は削除も。Features that simply wrap the operating system API are also removed, because the Windows Runtime is easy to call from managed code.

    詳細について、Windows 8.x ストア アプリ用 .NET.NET for Windows 8.x Store appsを参照してください、 .NET Windows ストア アプリの概要します。To read more about the Windows 8.x ストア アプリ用 .NET.NET for Windows 8.x Store apps, see the .NET for Windows Store apps overview. API 選択プロセスについては、次を参照してください。、 Metro スタイル アプリ用 .NET .NET ブログのエントリ。To read about the API selection process, see the .NET for Metro style apps entry in the .NET blog.

  • Windows ランタイム構築するためのユーザー インターフェイス要素を提供しますWindows 8.x ストアWindows 8.x Storeアプリ、およびオペレーティング システムの機能へのアクセスを提供します。The Windows Runtime provides the user interface elements for building Windows 8.x ストアWindows 8.x Store apps, and provides access to operating system features. Windows ランタイムが可能なメタデータを .NET Framework のように、C#および Windows ランタイム、.NET Framework の使用方法を使用する Visual Basic コンパイラはクラス ライブラリ。Like the .NET Framework, the Windows Runtime has metadata that enables the C# and Visual Basic compilers to use the Windows Runtime the way they use the .NET Framework class libraries. .NET Framework では、いくつかの違いを非表示にして、Windows ランタイムを使用してやすくなります。The .NET Framework makes it easier to use the Windows Runtime by hiding some differences:

    • .NET Framework と、パターンの追加や削除、イベント ハンドラーなど、Windows ランタイム間のプログラミング パターンでは、いくつか違いが非表示になります。Some differences in programming patterns between the .NET Framework and the Windows Runtime, such as the pattern for adding and removing event handlers, are hidden. ユーザーは .NET Framework のパターンを使用するとよいだけです。You simply use the .NET Framework pattern.

    • よく使用される型 (たとえばプリミティブ型やコレクション) の違いの一部が非表示になります。Some differences in commonly used types (for example, primitive types and collections) are hidden. 説明したように単純に .NET Framework 型を使用するの相違点で表示される IDE、この記事で後述します。You simply use the .NET Framework type, as discussed in Differences That Are Visible in the IDE, later in this article.

ほとんどの場合、Windows ランタイム用 .NET Framework のサポートは透過的です。Most of the time, .NET Framework support for the Windows Runtime is transparent. 次のセクションでは、マネージ コードと Windows ランタイム間の明確な違いについて説明します。The next section discusses some of the apparent differences between managed code and the Windows Runtime.

.NET Framework と Windows ランタイム リファレンス ドキュメントThe .NET Framework and the Windows Runtime Reference Documentation

Windows ランタイムと .NET Framework ドキュメント セットは、分離です。The Windows Runtime and the .NET Framework documentation sets are separate. 型またはメンバーに関するヘルプを表示するために F1 キーを押すと、該当するセットのリファレンス ドキュメントが表示されます。If you press F1 to display Help on a type or member, reference documentation from the appropriate set is displayed. ただしを参照する場合、 Windows ランタイム リファレンス不可解と思われる例が発生する可能性があります。However, if you browse through the Windows Runtime reference you might encounter examples that seem puzzling:

  • などのトピック、IIterable<T>インターフェイスでは、Visual Basic または c# の宣言の構文がありません。Topics such as the IIterable<T> interface don't have declaration syntax for Visual Basic or C#. 代わりに、メモをセクションの構文上が表示されます (この場合は、".NET:このインターフェイスは System.Collections.Generic.IEnumerable として表示されます<T >")。Instead, a note appears above the syntax section (in this case, ".NET: This interface appears as System.Collections.Generic.IEnumerable<T>"). .NET Framework と Windows ランタイムは、さまざまなインターフェイスと同様の機能を提供するためです。This is because the .NET Framework and the Windows Runtime provide similar functionality with different interfaces. さらに、IIterable では列挙子を返すのに First メソッドではなく GetEnumerator メソッドを使用するという、動作の違いもあります。In addition, there are behavioral differences: IIterable has a First method instead of a GetEnumerator method to return the enumerator. 一般的なタスクを実行する別の方法を学習することを求める代わりには、.NET Framework は、マネージ コードを熟知している型を使用するようにして、Windows ランタイムをサポートします。Instead of forcing you to learn a different way of performing a common task, the .NET Framework supports the Windows Runtime by making your managed code appear to use the type you're familiar with. 表示されなくなります、 IIterable IDE では、インターフェイスであるため、Windows ランタイム リファレンス ドキュメントで直面する唯一の方法が直接そのドキュメントを参照して、します。You won't see the IIterable interface in the IDE, and therefore the only way you'll encounter it in the Windows Runtime reference documentation is by browsing through that documentation directly.

  • SyndicationFeed(String, String, Uri)ドキュメントは、密接に関連する問題を示しています。さまざまな言語別に、パラメーターの型が表示されます。The SyndicationFeed(String, String, Uri) documentation illustrates a closely related issue: Its parameter types appear to be different for different languages. C# と Visual Basic の場合、パラメーターの型は System.StringSystem.Uri です。For C# and Visual Basic, the parameter types are System.String and System.Uri. これもやはり、.NET Framework で独自の String 型と Uri 型が使われるためであり、このようなよく使用される型について、.NET Framework ユーザーが処理を実行する別の方法を学習しても意味はありません。Again, this is because the .NET Framework has its own String and Uri types, and for such commonly used types it doesn't make sense to force .NET Framework users to learn a different way of doing things. IDE では、.NET Framework には、対応する Windows ランタイム型が非表示にします。In the IDE, the .NET Framework hides the corresponding Windows Runtime types.

  • いくつかの場合など、GridLength構造体には、.NET Framework には、同じ名前が、多くの機能を持つ型。In a few cases, such as the GridLength structure, the .NET Framework provides a type with the same name but more functionality. たとえば、一連のコンストラクターとプロパティのトピックは GridLength に関連付けられますが、メンバーがマネージド コードでのみ使用可能であるために、Visual Basic と C# に関してのみ構文ブロックの機能を備えています。For example, a set of constructor and property topics are associated with GridLength, but they have syntax blocks only for Visual Basic and C# because the members are available only in managed code. Windows ランタイムでは、構造体はフィールドしかありません。In the Windows Runtime, structures have only fields. Windows ランタイムの構造体には、ヘルパー クラスが必要です。 GridLengthHelper、同等の機能を提供します。The Windows Runtime structure requires a helper class, GridLengthHelper, to provide equivalent functionality. このヘルパー クラスは、マネージド コードを記述している間は IDE に表示されません。You won't see that helper class in the IDE when you're writing managed code.

  • IDE では、Windows ランタイム型の表示から派生するSystem.Objectします。In the IDE, Windows Runtime types appear to derive from System.Object. この型のメンバーは、Object などの Object.ToString から継承されるように表示されます。They appear to have members inherited from Object, such as Object.ToString. これらのメンバーから実際には、型が継承する場合のように動作Object、Windows ランタイム型にキャストできるとObjectします。These members operate as they would if the types actually inherited from Object, and Windows Runtime types can be cast to Object. この機能は、.NET Framework は、Windows ランタイムのサポートの一部です。This functionality is part of the support that the .NET Framework provides for the Windows Runtime. ただし、Windows ランタイム リファレンス ドキュメントの種類を表示する場合は、このようなメンバーは表示されません。However, if you view the types in the Windows Runtime reference documentation, no such members appear. これらの見かけ上の継承されたメンバーに関するドキュメントは、System.Object のリファレンス ドキュメントに含まれています。The documentation for these apparent inherited members is provided by the System.Object reference documentation.

IDE で表示される相違点Differences That Are Visible in the IDE

高度なプログラミング シナリオなどで記述された Windows ランタイム コンポーネントを使用してC#のアプリケーション ロジックを提供する、 Windows 8.x ストアWindows 8.x Store JavaScript を使用して Windows 用にビルドされたアプリでは、このような違いはでも、IDE で明らかな、ドキュメントです。In more advanced programming scenarios, such as using a Windows Runtime component written in C# to provide the application logic for a Windows 8.x ストアWindows 8.x Store app built for Windows using JavaScript, such differences are apparent in the IDE as well as in the documentation. コンポーネントが返されるときに、 IDictionary<int, string> 、JavaScript と JavaScript デバッガーで見てのメソッドが表示されますIMap<int, string>JavaScript は、Windows ランタイム型を使用するためです。When your component returns an IDictionary<int, string> to JavaScript, and you look at it in the JavaScript debugger, you'll see the methods of IMap<int, string> because JavaScript uses the Windows Runtime type. よく使用されるコレクション型のうち、この 2 言語で表示が異なる型の一部を次の表に示します。Some commonly used collection types that appear differently in the two languages are shown in the following table:

Windows ランタイム型Windows Runtime type 対応する .NET Framework の型Corresponding .NET Framework type
IIterable<T> IEnumerable<T>
IIterator<T> IEnumerator<T>
IVector<T> IList<T>
IVectorView<T> IReadOnlyList<T>
IMap<K, V> IDictionary<TKey, TValue>
IMapView<K, V> IReadOnlyDictionary<TKey, TValue>
IBindableIterable IEnumerable
IBindableVector IList
Windows.UI.Xaml.Data.INotifyPropertyChanged System.ComponentModel.INotifyPropertyChanged
Windows.UI.Xaml.Data.PropertyChangedEventHandler System.ComponentModel.PropertyChangedEventHandler
Windows.UI.Xaml.Data.PropertyChangedEventArgs System.ComponentModel.PropertyChangedEventArgs

Windows ランタイムでIMap<K, V>IMapView<K, V>を使用して反復されますIKeyValuePairします。In the Windows Runtime, IMap<K, V> and IMapView<K, V> are iterated using IKeyValuePair. これらをマネージド コードに渡すと、IDictionary<TKey, TValue> および IReadOnlyDictionary<TKey, TValue> として表示されるため、これを列挙するには必然的に System.Collections.Generic.KeyValuePair<TKey, TValue> を使用します。When you pass them to managed code, they appear as IDictionary<TKey, TValue> and IReadOnlyDictionary<TKey, TValue>, so naturally you use System.Collections.Generic.KeyValuePair<TKey, TValue> to enumerate them.

インターフェイスがマネージド コード内に表示される方法によって、これらのインターフェイスを実装する型の表示方法が決まります。The way interfaces appear in managed code affects the way types that implement these interfaces appear. たとえば、PropertySet クラスは IMap<K, V> を実装しますが、これはマネージド コードでは IDictionary<TKey, TValue> として表示されます。For example, the PropertySet class implements IMap<K, V>, which appears in managed code as IDictionary<TKey, TValue>. PropertySet は、IDictionary<TKey, TValue> ではなく IMap<K, V> を実装したかのように表示されます。したがってマネージ コードでは、Add メソッド (その動作は .NET Framework ディクショナリの Add メソッドと同様) が含まれているように表示されます。PropertySet appears as if it implemented IDictionary<TKey, TValue> instead of IMap<K, V>, so in managed code it appears to have an Add method, which behaves like the Add method on .NET Framework dictionaries. Insert メソッドがないように見えます。It doesn't appear to have an Insert method.

.NET Framework を使用して、Windows ランタイム コンポーネントと JavaScript で、このようなコンポーネントを使用する方法を示すチュートリアルを作成する方法の詳細については、次を参照してくださいで Windows ランタイム コンポーネントの作成C#および Visual Basic.For more information about using the .NET Framework to create a Windows Runtime component, and a walkthrough that shows how to use such a component with JavaScript, see Creating Windows Runtime Components in C# and Visual Basic.

プリミティブ型Primitive Types

マネージ コードで、Windows ランタイムの自然な使用を有効にするのには、コード内の Windows ランタイムのプリミティブ型ではなく .NET Framework のプリミティブ型が表示されます。To enable the natural use of the Windows Runtime in managed code, .NET Framework primitive types appear instead of Windows Runtime primitive types in your code. .NET Framework では、Int32 構造体などのプリミティブ型には、Int32.TryParse メソッドなどの便利なプロパティとメソッドが多くあります。In the .NET Framework, primitive types like the Int32 structure have many useful properties and methods, such as the Int32.TryParse method. これに対し、プリミティブ型と Windows ランタイムの構造体は、フィールドしかありません。By contrast, primitive types and structures in the Windows Runtime have only fields. マネージド コードでプリミティブを使用すると、.NET Framework の型のように表示され、通常どおりに .NET Framework 型のプロパティとメソッドを使用できます。When you use primitives in managed code, they appear to be .NET Framework types, and you can use the properties and methods of the .NET Framework types as you normally would. 要約すると、次のようになります。The following list provides a summary:

  • Windows ランタイムのプリミティブのInt32Int64SingleDoubleBooleanString (変更できないコレクションの Unicode 文字)、 EnumUInt32UInt64Guid、同じ名前の型を使用して、System名前空間。For the Windows Runtime primitives Int32, Int64, Single, Double, Boolean, String (an immutable collection of Unicode characters), Enum, UInt32, UInt64, and Guid, use the type of the same name in the System namespace.

  • UInt8 では、System.Byte を使用します。For UInt8, use System.Byte.

  • Char16 では、System.Char を使用します。For Char16, use System.Char.

  • IInspectable インターフェイスでは、System.Object を使用します。For the IInspectable interface, use System.Object.

  • HRESULT では、System.Int32 のメンバーを 1 つ含む構造体を使用します。For HRESULT, use a structure with one System.Int32 member.

同様、インターフェイス型では、ときにこの表示の証拠ですが表示されるときだけ、.NET Framework プロジェクトによって使用される Windows ランタイム コンポーネントをWindows 8.x ストアWindows 8.x StoreJavaScript を使用してビルドされたアプリ。As with interface types, the only time you might see evidence of this representation is when your .NET Framework project is a Windows Runtime component that is used by a Windows 8.x ストアWindows 8.x Store app built using JavaScript.

表示される他の基本的な一般的に使用される Windows ランタイム型が含まれています、.NET Framework の同等にはマネージ コード、Windows.Foundation.DateTimeとしてマネージ コードに表示される構造体、System.DateTimeOffset構造体、およびWindows.Foundation.TimeSpanを構造として表示されます、System.TimeSpan構造体。Other basic, commonly used Windows Runtime types that appear in managed code as their .NET Framework equivalents include the Windows.Foundation.DateTime structure, which appears in managed code as the System.DateTimeOffset structure, and the Windows.Foundation.TimeSpan structure, which appears as the System.TimeSpan structure.

その他の相違点Other Differences

いくつかの場合、.NET Framework の型は、Windows ランタイム型ではなく、コードに表示されるという事実には、ユーザーによる操作が必要です。In a few cases, the fact that .NET Framework types appear in your code instead of Windows Runtime types requires action on your part. たとえば、Windows.Foundation.Uriクラスとして表示されますSystem.Uri.NET Framework コードでします。For example, the Windows.Foundation.Uri class appears as System.Uri in .NET Framework code. System.Uri により、相対 URI ですがWindows.Foundation.Uri絶対 URI が必要です。System.Uri allows a relative URI, but Windows.Foundation.Uri requires an absolute URI. したがって、Windows ランタイム メソッドに URI を渡すと、ときに、絶対であるようにする必要があります。Therefore, when you pass a URI to a Windows Runtime method, you must ensure that it's absolute. (を参照してくださいWindows ランタイムへの URI の引き渡し)。(See Passing a URI to the Windows Runtime.)

Windows ランタイム コンポーネントの開発シナリオScenarios for Developing Windows Runtime Components

マネージ Windows ランタイム コンポーネントのサポートされるシナリオは、次の原則に依存します。The scenarios that are supported for managed Windows Runtime Components depend on the following general principles:

  • .NET Framework を使用してビルドされる Windows ランタイム コンポーネントがあるその他の Windows Runtimelibraries から明確な違いありません。Windows Runtime Components that are built using the .NET Framework have no apparent differences from other Windows Runtimelibraries. たとえば、マネージ コードを使用して、ネイティブの Windows ランタイム コンポーネントを再実装する場合は、2 つのコンポーネントは表面上と区別することできません。For example, if you re-implement a native Windows Runtime component by using managed code, the two components are outwardly indistinguishable. コンポーネントがマネージド コードで記述されているという事実は、そのコード自体がマネージド コードであったとしても、そのコンポーネントを使用するコードには表示されません。The fact that your component is written in managed code is invisible to the code that uses it, even if that code is itself managed code. ただし内部的には、そのコンポーネントは真のマネージド コードであり、共通言語ランタイム (CLR) 上で実行されます。However, internally, your component is true managed code and runs on the common language runtime (CLR).

  • コンポーネントには、アプリケーション ロジック、Windows 8.x ストアWindows 8.x Store UI コントロール、またはその両方を実装する型を含めることができます。Components can contain types that implement application logic, Windows 8.x ストアWindows 8.x Store UI controls, or both.

    注意

    アプリケーション ロジックから UI 要素を分離することをお勧めします。It's good practice to separate UI elements from application logic. また、JavaScript や HTML を使用して Windows 用にビルドされた Windows 8.x ストアWindows 8.x Store アプリでは、Windows 8.x ストアWindows 8.x Store UI コントロールを使用できません。Also, you can't use Windows 8.x ストアWindows 8.x Store UI controls in a Windows 8.x ストアWindows 8.x Store app built for Windows using JavaScript and HTML.

  • コンポーネントは、Windows 8.x ストアWindows 8.x Store アプリ用 Visual Studio ソリューション内のプロジェクトの場合もあれば、複数のソリューションに追加できる再利用可能なコンポーネントの場合もあります。A component can be a project within a Visual Studio solution for a Windows 8.x ストアWindows 8.x Store app, or a reusable component that you can add to multiple solutions.

    注意

    コンポーネントはでのみ使用される場合C#または Visual Basic、Windows ランタイム コンポーネントに理由がないです。If your component will be used only with C# or Visual Basic, there's no reason to make it a Windows Runtime component. 行った場合、通常 .NET Framework クラス ライブラリを代わりに、そのパブリック API サーフェイスを Windows ランタイム型に制限する必要はありません。If you make it an ordinary .NET Framework class library instead, you don't have to restrict its public API surface to Windows Runtime types.

  • Windows ランタイムを使用して再利用可能なコンポーネントのバージョンをリリースするVersionAttributeさまざまなバージョンでどの型 (および型のメンバー) を識別するために属性が追加されました。You can release versions of reusable components by using the Windows Runtime VersionAttribute attribute to identify which types (and which members within a type) were added in different versions.

  • コンポーネントの型は、Windows ランタイム型から派生できます。The types in your component can derive from Windows Runtime types. コントロールが内のプリミティブ コントロール型から派生できます、Windows.UI.Xaml.Controls.Primitives名前空間または終了コントロールなどの詳細はからButtonします。Controls can derive from the primitive control types in the Windows.UI.Xaml.Controls.Primitives namespace or from more finished controls such as Button.

    重要

    以降でWindows 8Windows 8され、.NET Framework 4.5 とマネージ Windows ランタイム コンポーネントのすべてのパブリック型をシールする必要があります。Starting with Windows 8Windows 8 and the .NET Framework 4.5, all public types in a managed Windows Runtime component must be sealed. 別の Windows ランタイム コンポーネントの型は、そこから派生できません。A type in another Windows Runtime component can't derive from them. コンポーネントでポリモーフィックな動作を提供するには、インターフェイスを作成し、そのインターフェイスをポリモーフィックな型に実装します。If you want to provide polymorphic behavior in your component, you can create an interface and implement it in the polymorphic types.

  • コンポーネントのパブリック型で、すべてのパラメーターと戻り値の種類は、Windows ランタイムの型 (コンポーネントを定義する Windows ランタイム型を含む) である必要があります。All parameter and return types on the public types in your component must be Windows Runtime types (including the Windows Runtime types that your component defines).

次のセクションでは、一般的なシナリオの例を示します。The following sections provide examples of common scenarios.

JavaScript による Windows 8.x ストアWindows 8.x Store アプリ用アプリケーション ロジックApplication Logic for a Windows 8.x ストアWindows 8.x Store App with JavaScript

JavaScript を使用して Windows の Windows 8.x ストアWindows 8.x Store アプリを開発する場合、アプリケーション ロジックの一部が、他の部分に比べてマネージド コードでより適切に機能したり、開発が容易であったりすることがあります。When you develop a Windows 8.x ストアWindows 8.x Store app for Windows using JavaScript, you might find that some parts of the application logic perform better in managed code, or are easier to develop. JavaScript では .NET Framework クラス ライブラリを直接使用できませんが、クラス ライブラリを .WinMD ファイルにすることができます。JavaScript can't use .NET Framework class libraries directly, but you can make the class library a .WinMD file. このシナリオでは、Windows ランタイム コンポーネントは、バージョン属性を提供する意味をなさないために、アプリの不可欠な部分が。In this scenario, the Windows Runtime component is an integral part of the app, so it doesn't make sense to provide version attributes.

再利用可能な Windows 8.x ストアWindows 8.x Store UI コントロールReusable Windows 8.x ストアWindows 8.x Store UI Controls

再利用可能な Windows ランタイム コンポーネントに関連する UI コントロールのセットをパッケージ化することができます。You can package a set of related UI controls in a reusable Windows Runtime component. コンポーネントは、単独で商品化することも、作成するアプリの要素として使用することもできます。The component can be marketed on its own or used as an element in the apps you create. このシナリオで理にかなって Windows ランタイムを使用して、VersionAttribute互換性を改善する属性。In this scenario, it makes sense to use the Windows Runtime VersionAttribute attribute to improve compatibility.

既存の .NET Framework アプリからの再利用可能なアプリケーション ロジックReusable Application Logic from Existing .NET Framework Apps

スタンドアロンの Windows ランタイム コンポーネントとして、既存のデスクトップ アプリからマネージ コードをパッケージ化できます。You can package managed code from your existing desktop apps as a standalone Windows Runtime component. これによって、C# または Visual Basic を使用してビルドされる Windows 8.x ストアWindows 8.x Store アプリに加えて、C++ または JavaScript を使用してビルドされる Windows 8.x ストアWindows 8.x Store アプリでも、コンポーネントを使用できるようになります。This enables you to use the component in Windows 8.x ストアWindows 8.x Store apps built using C++ or JavaScript, as well as in Windows 8.x ストアWindows 8.x Store apps built using C# or Visual Basic. コードに再利用シナリオが複数ある場合、バージョン管理はオプションです。Versioning is an option if there are multiple reuse scenarios for the code.

タイトルTitle 説明Description
Windows ストア アプリ用 .NET の概要.NET for Windows Store apps overview .NET Framework 型と作成に使用できるメンバーについて説明しますWindows 8.x ストアWindows 8.x Storeアプリと Windows RuntimeComponents します。Describes the .NET Framework types and members that you can use to create Windows 8.x ストアWindows 8.x Store apps and Windows RuntimeComponents. (Windows デベロッパー センター内)。(In the Windows Dev Center.)
C# または Visual Basic を使った Windows ストア アプリのロードマップRoadmap for Windows Store apps using C# or Visual Basic C# または Visual Basic を使用して Windows 8.x ストアWindows 8.x Store アプリの開発を開始するときに役立つ主要リソース (各種のクイック スタート トピック、ガイドライン、ベスト プラクティスなど) が用意されていますProvides key resources to help you get started developing Windows 8.x ストアWindows 8.x Store apps by using C# or Visual Basic, including many Quickstart topics, guidelines, and best practices. (Windows デベロッパー センター内)。(In the Windows Dev Center.)
どのように操作方法 (XAML)How tos (XAML) C# または Visual Basic を使用して Windows 8.x ストアWindows 8.x Store アプリの開発を開始するときに役立つ主要リソース (各種のクイック スタート トピック、ガイドライン、ベスト プラクティスなど) が用意されていますProvides key resources to help you get started developing Windows 8.x ストアWindows 8.x Store apps by using C# or Visual Basic, including many Quickstart topics, guidelines, and best practices. (Windows デベロッパー センター内)。(In the Windows Dev Center.)
C# および Visual Basic での Windows ランタイム コンポーネントの作成Creating Windows Runtime Components in C# and Visual Basic .NET Framework を使用して、Windows ランタイム コンポーネントを作成する方法について説明しますの一部として使用する方法について説明します、Windows 8.x ストアWindows 8.x Storeアプリの JavaScript を使用して Windows 用にビルドされ、Visual Studio の組み合わせをデバッグする方法について説明します。Describes how to create a Windows Runtime component using the .NET Framework, explains how to use it as part of a Windows 8.x ストアWindows 8.x Store app built for Windows using JavaScript, and describes how to debug the combination with Visual Studio. (Windows デベロッパー センター内)。(In the Windows Dev Center.)
Windows ランタイム リファレンスWindows Runtime reference Windows ランタイムのリファレンス ドキュメント。The reference documentation for the Windows Runtime. (Windows デベロッパー センター内)。(In the Windows Dev Center.)
Windows ランタイムへの URI の引き渡しPassing a URI to the Windows Runtime これを回避する方法と、Windows ランタイムにマネージ コードから URI を渡す場合に生じる可能性のある問題について説明します。Describes an issue that can arise when you pass a URI from managed code to the Windows Runtime, and how to avoid it.