C++/CLI + XAML
前々回のC++/CX + XAML に比較して、C++/CLIでもできるのかどうかテストしたところ、一応(形の上では?)できたので備忘録としておきたいと思います。
(WebViewもトライしてみましたができませんでした。方法はあるのかな?)
環境 : VisualStudio2012 / Windows 8
プロジェクトは、C++ CLRの空のプロジェクトを選びました。
using namespace System; using namespace System::IO; using namespace System::Windows; using namespace System::Windows::Markup; using namespace System::Windows::Navigation; using namespace System::Threading; [STAThreadAttribute] int main(array<System::String ^> ^args) { FileStream^ fs = gcnew FileStream("xamltest.xaml", FileMode::Open, FileAccess::Read); Window^ win = safe_cast<Window^>( XamlReader::Load(fs) ); if(win != nullptr){ win->Show(); } Thread::Sleep(1000); return 0; }
xamltest.xaml
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" Title="XamlTest" Height="300" Width="500"> <Grid> <Label VerticalAlignment="Center" HorizontalAlignment="Center">Xaml Test</Label> </Grid> </Window>
実行すると、1秒間だけ以下の画面が表示されます。