gpt4 book ai didi

c# - Silverlight 根据存储在 IsolatedStorage 中的变量刷新图像

转载 作者:行者123 更新时间:2023-11-30 16:27:51 26 4
gpt4 key购买 nike

我是 silverlight 的新手,我的应用程序有一些问题。我将应用程序日期保存在数据库和 IsolatedStorage 中。

我在 UI 的顶部有一个图像控件,用户可以在其中始终看到应用程序的当前日期。我使用图像是因为我创建了一些时尚的图像来表示 mm.yyyy 格式的日期。

我在主页 Authentication_LoggedIn() 中设置图像控件的 URI:

   //setez luna curenta in isolatedStorage
adminUtilizContext.GetSetariParticulare(4, 0, (op) =>
{
foreach (var item in op.Value)
{
if (IsolatedStorageSettings.ApplicationSettings.Contains("lunaCurenta"))
IsolatedStorageSettings.ApplicationSettings["lunaCurenta"] = item.Substring(2);
else
IsolatedStorageSettings.ApplicationSettings.Add("lunaCurenta", item.Substring(2));

Uri uri;
uri = new Uri("/Indeco.SIEF;component/Images/Calendar/"+item.Substring(2)+".png", UriKind.RelativeOrAbsolute);
dataLuna.Source = new BitmapImage(uri);
}
}, null);

xaml 看起来像这样:

    <StackPanel Grid.Column="1" Orientation="Horizontal" HorizontalAlignment="Right">                
<Image Name="dataLuna" HorizontalAlignment="Right"/>
</StackPanel>

它工作正常,但当用户更改当前日期时出现问题。在数据库中,IsolatedStorage 已正确存储。我正在更改图像源,但直到我手动刷新页面后新图像才出现。

你能告诉我如何自动执行此操作而无需手动刷新页面吗!

最好的问候。

用户更改日期的代码位于相应 UI(CurrentConfigurations.xaml) 的 ViewModel(CurrentConfigurationViewModel.cs) 中。有一个带有月份的组合框,SelectedItemChanged 会自动更新数据库和 IsolatedStorage。这就是我的位置我已经把你在我之前的评论中看到的代码放在一起了。今年也有一个 NumericUpDown 控件,它的工作原理是一样的。但是现在让我们谈谈这个月,然后我会自己做这一年:D!再次感谢 A print screen with the change date UI and the code i wrote for updating the Image source for the up-right corner (date)正如您在这张图片中看到的那样,当用户登录应用程序时,日期是 2011 年 4 月(右上),在我修改月份后,它仍然显示旧日期,我在 Db 中验证,在隔离存储中,它似乎没问题.您也可以看到我为更新图像源而编写的代码。

最佳答案

您可以尝试设置一个保存图像的属性,然后将图像源绑定(bind)到该属性。您的类需要实现 INotifyPropertyChanged 接口(interface),然后您可以通知您的图像控件您的属性已更改,它将重新加载图像。我希望这有帮助。 :)

如果这是您的代码,那么您将生成一个全新的 MainPage 并将其设置为 dataLuna ImageSource,而不是原始页面 dataLuna 控件。

我很高兴能帮上忙。

关于c# - Silverlight 根据存储在 IsolatedStorage 中的变量刷新图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7513138/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com