小编sta*_*ikk的帖子

在MapItemsControl.ItemTemplate中绑定EntranceThemeTransition属性不起作用

我有一个地图控件,地图项绑定如下:

<maps:MapItemsControl ItemsSource="{Binding MapObjects}">
    <maps:MapItemsControl.ItemTemplate>
        <DataTemplate>
            <Grid   
               maps:MapControl.Location="{Binding Location}"
               maps:MapControl.NormalizedAnchorPoint="{Binding AnchorPoint}" >
                   <Grid.Transitions>
                       <TransitionCollection>
                            <EntranceThemeTransition 
                                 FromVerticalOffset="{Binding VerticalOffset}" 
                                 FromHorizontalOffset="{Binding HorizontalOffset}" />
                       </TransitionCollection>
                   </Grid.Transitions>
               ...
            </Grid>
        </DataTemplate>
     </maps:MapItemsControl.ItemTemplate>
 </maps:MapItemsControl>
Run Code Online (Sandbox Code Playgroud)

我想要实现的是让地图项目有一些不错的动画,所以它们不会出现在任何地方......特别是我希望它们在朝向地图中心的方向上滑动到位.

但是这个代码似乎不起作用...... Binding甚至没有为它们的两个属性"调用" EntranceThemeTransition,它们保留了它们的默认值,以便每个地图项从右边滑入.

此外,当我将Binding语句更改为我的ViewModel中不存在的某个属性时,FromVerticalOffset="{Binding NonExistentProperty}没有错误指示通常会发生这种情况,并且看起来像这样:Error: BindingExpression path error: 'NonExistentProperty' property not found on 'IMS_Mobile.ViewModels.MapViewModel+MapItem...'

有人可以帮忙吗?谢谢.

c# xaml windows-runtime windows-phone-8.1

5
推荐指数
1
解决办法
281
查看次数

将 TransactionScope 与 SQLite 一起使用会导致数据库锁定异常

我正在尝试调整使用TransactionScopeOracle 并与 Oracle 一起使用的 ac# 代码,以便也与 SQLite 一起使用。我的代码的结构方式是,在访问 SQLite 数据库的事务范围内调用的每个方法都会创建自己的SQLiteConnection对象。

现在我在尝试打开TransactionScope块内的第二个连接时遇到了问题。我SQLiteConnection通过将它们包装在 using 语句中或调用Disposefinally 块来小心地正确处理所有未使用的对象。无论我做什么,第二次调用都会SQLiteConnection.Open数据库被锁定异常一段时间后超时 。

示例代码:

using(var transaction = new TransactionScope(TransactionScopeOption.Required))
{
    using(var connection1 = new SQLiteConnection(_connectionString))
    {
        connection1.Open();
        ... // Do stuff with the open connection

    } // Closes the connection 

    using(var connection2 = new SQLiteConnection(_connectionString))
    {
        // database locked exception
        connection2.Open();          
        ... 
    } 
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,我对这个问题的所有发现都在这篇文章中:http : //elegantcode.com/2010/07/02/using-transactionscope-with-sqlite/它说:

即使在处理第一个连接时,TransactionScope 也持有独占写入器锁。因为第一个连接不能完全关闭自身,打开第二个连接会导致锁定错误。

不幸的是,这篇文章没有提供任何解决方法。我很愿意坚持使用TransactionScope由于具有传递 …

c# sqlite transactionscope

5
推荐指数
0
解决办法
2312
查看次数