我正在尝试使用Windows 8"Metro Styled Apps",MVVM Light,并希望创建一个共享目标 - 到目前为止一切顺利.但是如果我在OnShareTargetActivated方法中并且想要将项添加到ObservableCollection,我会在类类型和COM对象之间捕获InvalidCastException.
Das COM-Objekt des Typs"System.Collections.Specialized.NotifyCollectionChangedEventHandler"kann nicht in den Klassentyp"System.Collections.Specialized.NotifyCollectionChangedEventHandler"umgewandelt werden.Instanzen von Typen,die COM-Komponentenrepräsentieren,könnennichtin andere Typen umgewandelt werden,die keine COM-Komponentenrepräsentieren.Echn Umwandlung in Schnittstellen istjedochmöglich,sofern die zugrunde liegende COM-Komponente QueryInterface-AufrufefürdieIID derSchnittstelleunterstützt.
英文版:
无法将类型为"System.Collections.Specialized.NotifyCollectionChangedEventHandler"的COM对象强制转换为类类型"System.Collections.Specialized.NotifyCollectionChangedEventHandler".表示COM组件的类型实例不能转换为不代表COM组件的类型; 但是只要底层的COM组件支持对接口的IID的QueryInterface调用,它们就可以转换为接口.
现在我有点困惑,不知道如何正确处理这种行为.
MainViewModel main1 = new ViewModelLocator().Main;
MainViewModel main2 = new MainViewModel();
var conversation = new ConversationViewModel();
conversation.Messages.Add(new MessageViewModel { Image = img, Text = "Share" });
main1.Conversations.Add(conversation); // error InvalidCastException
main2.Conversations.Add(conversation); // no error
Run Code Online (Sandbox Code Playgroud)
img新创建的BitmapImage 在哪里
ViewModelLocator
public class ViewModelLocator
{ …Run Code Online (Sandbox Code Playgroud) 我发现了一个问题,有人问我,为什么我把输出json_decode变成一个关联数组.
对我来说,使用关联数组比使用stdClasses更容易,并且在解码json字符串之后,已经存在许多支持数据处理的array_*函数.
经过短暂的性能测试后,转换为assoc数组的转换速度比转换为stdClass快约20%.
不过,默认行为是$assoc = false.所以我想知道,在处理json数据时使用stdClasses的好处是什么.是否有任何json类型无法在assoc数组中表示,但在stdClasses中?
我有一个Windows手机应用程序,有时得到InvalidOperationExceptions但不知道为什么以及如何避免它们.错误报告中的问题函数是Microsoft.Xna.Framework.Media.MediaLibraryEnumerator_1[[System.__Canon,_mscorlib]].get_Item,我得到这个堆栈跟踪
"Frame Image Function Offset
0 Microsoft.Xna.Framework.ni.dll Microsoft.Xna.Framework.Media.MediaLibraryEnumerator_1[[System.__Canon,_mscorlib]].get_Item 0x0003e4d8
1 Microsoft.Xna.Framework.ni.dll Microsoft.Xna.Framework.Media.MediaLibraryEnumerator_1[[System.__Canon,_mscorlib]].System.Collections.IEnumerator.get_Current 0x00000006
2 Microsoft.Xna.Framework.ni.dll Microsoft.Xna.Framework.Media.MediaLibraryEnumerator_1[[System.__Canon,_mscorlib]].System.Collections.Generic.IEnumerator_T_.get_Current 0x0000001c
3 MapLense.ni.DLL MapLense.Helper.PictureMapping.Add 0x000000a8
4 MapLense.ni.DLL MapLense.Helper.PictureMapping+_GetPicture_d__b.MoveNext 0x000000f6
5 mscorlib.ni.dll System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess 0x00216c46
6 mscorlib.ni.dll System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification 0x0000003a
7 mscorlib.ni.dll System.Runtime.CompilerServices.TaskAwaiter_1[[System.__Canon,_mscorlib]].GetResult 0x0000001c
8 MapLense.ni.DLL MapLense.Helper.Map+_AddPictureToMap_d__17.MoveNext 0x00000118
9 mscorlib.ni.dll System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess 0x00216c46
10 mscorlib.ni.dll System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification 0x0000003a
11 mscorlib.ni.dll System.Runtime.CompilerServices.TaskAwaiter_1[[System.__Canon,_mscorlib]].GetResult 0x0000001c
12 MapLense.ni.DLL MapLense.MainPage+_ViewModelOnPropertyChanged_d__1e.MoveNext 0x00000204
13 mscorlib.ni.dll System.Runtime.CompilerServices.AsyncMethodBuilderCore._ThrowAsync_b__0 0x00000036"
Run Code Online (Sandbox Code Playgroud)
我还尝试在代码块周围添加一个try-catch块,但没有结果
public static bool Add(DBPicture dbpicture)
{
if (Pictures.ContainsKey(dbpicture.UniqueID))
return true;
var root = new MediaLibrary().RootPictureAlbum;
foreach …Run Code Online (Sandbox Code Playgroud) 我创建了一个ac程序,它使用了gnu扩展中的嵌套函数,现在我想让它们符合ansi c标准.
什么是转换嵌套函数的最佳方法,嵌套函数访问一些外部变量到不同的东西.
#define lambda(return_type, function_body) \
({ \
return_type __fn__ function_body \
__fn__; \
})
Run Code Online (Sandbox Code Playgroud)
示例用法
size_t var1;
size_t var2;
lambda(void, (...) {
// some code
lambda(void, (...) {
// ...
// do something with var1/var2
// ..
}
// ...
// do something with var1/var2
}
Run Code Online (Sandbox Code Playgroud)
我考虑过将变量移到全局范围,所以从每个"lambda"中都可以知道它们可能是最简单的解决方案,但我不想要考虑全局范围,我不确定,如果这是最干净的方式.
正如一些评论者所说 - 这是一个具体的例子
/* fill itt*/
int n_method = 0;
void *add_method = lambda(void, (ir_entity *method) {
int itable_offset = n_method++;
const char *method_name = get_entity_name(method);
ir_entity *implementation = get_method_entity(klass, method_name); …Run Code Online (Sandbox Code Playgroud) 如何解决以下编译器错误:
错误:(127)在'talkie.feedback'包中找不到属性'border_width'的资源标识符
错误:(127)在'talkie.feedback'包中找不到属性'border_color'的资源标识符
错误:(134,31)找不到与给定名称匹配的资源(在'border_color'处,值为'@ color/white').
XML
<de.hdodenhof.circleimageview.CircleImageView
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/imageView"
android:layout_width="150dp"
android:layout_height="150dp"
android:src="@mipmap/cat_judges"
app:border_width="2dp"
app:border_color="@color/white"/>
Run Code Online (Sandbox Code Playgroud) 我正在使用以下代码来搜索生成的表并过滤数据.我的问题是,当我搜索让我们说1,它不仅搜索和过滤,1而且还包含1类似的数据11, 21, etc..
如何搜索并过滤我输入的确切数据?
<?php
if(isset($_POST['search']))
{
$valueToSearch = $_POST['valueToSearch'];
// search in all table columns
// using concat mysql function
$query = "SELECT * FROM `tbstats` WHERE CONCAT(`date`, `mode`, `svar`, `sdev`) LIKE '%".$valueToSearch."%'";
$search_result = filterTable($query);
}
else {
$query = "SELECT * FROM `tbstats`";
$search_result = filterTable($query);
}
function filterTable($query)
{
$connect = mysqli_connect("localhost", "root", "", "dbstats");
$filter_Result = mysqli_query($connect, $query);
return $filter_Result;
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Stats</title> …Run Code Online (Sandbox Code Playgroud) 我需要用php插入点,你知道任何库吗?传统搜索不允许我找到任何好结果.
我有一个表格,其中包含x和y列的值.
X Y
10 676
20 894
30 1100
40 1200
50 1000
Run Code Online (Sandbox Code Playgroud)
我想知道是否有一个函数可以帮助线性插值.例如,我想要对应于X = 35的Y的插值.
谢谢
php ×3
c# ×2
.net ×1
android ×1
asynchronous ×1
c ×1
c99 ×1
json ×1
mvvm-light ×1
windows-8 ×1