Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Windows 7资源管理器是否支持自定义列的多行文本?_C#_.net_Windows 7_Windows Explorer_Shell Extensions - Fatal编程技术网

C# Windows 7资源管理器是否支持自定义列的多行文本?

C# Windows 7资源管理器是否支持自定义列的多行文本?,c#,.net,windows-7,windows-explorer,shell-extensions,C#,.net,Windows 7,Windows Explorer,Shell Extensions,我已经使用.NET 4.0为windows资源管理器实现了一个自定义属性处理程序。除具有多个值的列显示在同一行中,并以;分隔外,所有内容都正常工作;。 我尝试将drawControl的control属性设置为Default、MultiLineText和MultiValueText,但仍然没有成功。我想要实现的是将每个值放在单独的行上,而不是用;分隔 以下是我注册的propdesc文件的propertyDescription: <propertyDescription name="Test.

我已经使用.NET 4.0为windows资源管理器实现了一个自定义属性处理程序。除具有多个值的列显示在同一行中,并以;分隔外,所有内容都正常工作;。 我尝试将drawControl的control属性设置为Default、MultiLineText和MultiValueText,但仍然没有成功。我想要实现的是将每个值放在单独的行上,而不是用;分隔

以下是我注册的propdesc文件的propertyDescription:

<propertyDescription name="Test.Property" formatID="{A5D0A4B0-EC4D-43DA-86F6-55448D9E9430}" propID="555">
  <description>Description</description>
  <searchInfo inInvertedIndex="True" isColumn="True" columnIndexType="OnDisk"/>
  <typeInfo type="Any" multipleValues="True" isViewable="True" isQueryable="True" isInnate="False"/>
  <labelInfo label="Test Property"/>
  <displayInfo displayType="String" mnemonics="testproperty">
    <drawControl control="MultiLineText" />
  </displayInfo>
</propertyDescription>
[DllImport("propsys.dll", CharSet = CharSet.Unicode, SetLastError = true)]
    internal static extern void InitPropVariantFromStringVector([In, Out] string[] prgsz, uint cElems, out PropVariant ppropvar);

public int GetValue(ref PropertyKey key, out PropVariant pv)
{

    pv = new PropVariant();
    pv.variantType = (short)(VarEnum.VT_VECTOR | VarEnum.VT_LPWSTR);
    string[] stringArray = new string[] { "Test1", "Test2" };
    InitPropVariantFromStringVector(stringArray, (uint)stringArray.Length, out pv);
    return HR_OK;
}