Caliburn.Metro
A library that combines MahApps.Metro with Caliburn.Micro for Metro UI styled WPF applications.
Install / Use
/learn @bugthesystem/Caliburn.MetroREADME
Caliburn.Metro
Library combines MahApps.Metro and Caliburn.Micro for Metro UI styled WPF applications
It provides Caliburn.Micro Bootstrapper and MahApps.Metro MetroWindow integrated WindowManager. Also project contains Autofac Bootstrapper integration.
Default Setup Demo application
//Basic AppBootstrapper
public class AppBootstrapper : CaliburnMetroCompositionBootstrapper<AppViewModel>
{
}
//AppWindowManager with custom Main window
[Export(typeof(IWindowManager))]
public class AppWindowManager : MetroWindowManager
{
public override MetroWindow CreateCustomWindow(object view, bool windowIsView)
{
if (windowIsView)
{
return view as MainWindowContainer;
}
return new MainWindowContainer
{
Content = view
};
}
}
Autofac Bootstrapper Setup Demo application
//Autofac AppBootstrapper
public class AppBootstrapper : CaliburnMetroAutofacBootstrapper<AppViewModel>
{
protected override void ConfigureContainer(ContainerBuilder builder)
{
builder.RegisterType<AppWindowManager>().As<IWindowManager>().SingleInstance();
var assembly = typeof(AppViewModel).Assembly;
builder.RegisterAssemblyTypes(assembly)
.Where(item => item.Name.EndsWith("ViewModel") && item.IsAbstract == false)
.AsSelf()
.SingleInstance();
}
}
//AppWindowManager with custom Main window
public class AppWindowManager : MetroWindowManager
{
public override MetroWindow CreateCustomWindow(object view, bool windowIsView)
{
if (windowIsView)
{
return view as MainWindowContainer;
}
return new MainWindowContainer
{
Content = view
};
}
}
License
Code and documentation are available according to the Unlicense (see LICENSE).
Related Skills
node-connect
349.7kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.7kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.7kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
