好吧,我多次看到这个问题,但是给TS的所有答案都不适用于我的UserControl。 =(
问题是,当我在Designer内的UserControl上使用Background属性时,它只有在我将其设置为真实颜色时才有效,如红色,蓝色,绿色等。
然而,当我尝试将其设置为透明时,它再次变为白色。
但是我得到的就是这个(这个白色的背景,或者除了透明之外的任何颜色)
有关如何使其成为可能的任何建议吗?
P.S。此自定义用户控件是一种MessageBox
更新!忘了提这个控件的源代码 http://www.codeproject.com/Tips/563144/WPF-Dialog-MessageBox-Manager( Ronald Schlenker )
public partial class LoginWindow : Window
{
public LoginWindow()
{
InitializeComponent();
string languageCode = CultureInfo.CurrentCulture.TwoLetterISOLanguageName;
string Path = System.AppDomain.CurrentDomain.BaseDirectory.ToString();
TimedCall();
}
private void TimedCall()
{
System.Threading.Timer timer = null;
timer = new System.Threading.Timer((obj) =>
{
ShowMessageBox();
timer.Dispose();
},
null, 3000, System.Threading.Timeout.Infinite);
}
private void ShowMessageBox()
{
var _dialogManager = new DialogManager(this, Dispatcher);
_dialogManager
.CreateMessageDialog("Test", "I'm a dialogafsaffsfsf", DialogMode.Ok)
.Show();
}
}
答案 0 :(得分:1)
在Window上添加一个Loaded事件并在那里调用TimedCall()。您的窗口尚未加载,这就是您想要的背景尚未生效的原因。