-
Notifications
You must be signed in to change notification settings - Fork 1.5k
/
IUriContext.xml
107 lines (99 loc) · 8.95 KB
/
IUriContext.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
<Type Name="IUriContext" FullName="System.Windows.Markup.IUriContext">
<TypeSignature Language="C#" Value="public interface IUriContext" />
<TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract IUriContext" FrameworkAlternate="netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1;windowsdesktop-3.0;windowsdesktop-3.1;windowsdesktop-5.0;windowsdesktop-6.0;windowsdesktop-7.0" />
<TypeSignature Language="DocId" Value="T:System.Windows.Markup.IUriContext" />
<TypeSignature Language="VB.NET" Value="Public Interface IUriContext" />
<TypeSignature Language="F#" Value="type IUriContext = interface" />
<TypeSignature Language="C++ CLI" Value="public interface class IUriContext" />
<TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract beforefieldinit IUriContext" FrameworkAlternate="windowsdesktop-8.0;windowsdesktop-9.0" />
<AssemblyInfo>
<AssemblyName>System.Xaml</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>PresentationCore</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>WindowsBase</AssemblyName>
</AssemblyInfo>
<TypeForwardingChain>
<TypeForwarding From="PresentationCore" FromVersion="4.0.0.0" To="System.Xaml" ToVersion="4.0.0.0" FrameworkAlternate="netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1;windowsdesktop-3.0;windowsdesktop-3.1" />
<TypeForwarding From="WindowsBase" FromVersion="4.0.0.0" To="System.Xaml" ToVersion="4.0.0.0" FrameworkAlternate="netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1;windowsdesktop-3.0;windowsdesktop-3.1" />
<TypeForwarding From="PresentationCore" FromVersion="5.0.0.0" To="System.Xaml" ToVersion="5.0.0.0" FrameworkAlternate="windowsdesktop-5.0" />
<TypeForwarding From="WindowsBase" FromVersion="5.0.0.0" To="System.Xaml" ToVersion="5.0.0.0" FrameworkAlternate="windowsdesktop-5.0" />
<TypeForwarding From="PresentationCore" FromVersion="6.0.0.0" To="System.Xaml" ToVersion="6.0.0.0" FrameworkAlternate="windowsdesktop-6.0" />
<TypeForwarding From="WindowsBase" FromVersion="6.0.0.0" To="System.Xaml" ToVersion="6.0.0.0" FrameworkAlternate="windowsdesktop-6.0" />
<TypeForwarding From="PresentationCore" FromVersion="7.0.0.0" To="System.Xaml" ToVersion="7.0.0.0" FrameworkAlternate="windowsdesktop-7.0" />
<TypeForwarding From="WindowsBase" FromVersion="7.0.0.0" To="System.Xaml" ToVersion="7.0.0.0" FrameworkAlternate="windowsdesktop-7.0" />
<TypeForwarding From="PresentationCore" FromVersion="8.0.0.0" To="System.Xaml" ToVersion="8.0.0.0" FrameworkAlternate="windowsdesktop-8.0" />
<TypeForwarding From="WindowsBase" FromVersion="8.0.0.0" To="System.Xaml" ToVersion="8.0.0.0" FrameworkAlternate="windowsdesktop-8.0" />
<TypeForwarding From="PresentationCore" FromVersion="9.0.0.0" To="System.Xaml" ToVersion="9.0.0.0" FrameworkAlternate="windowsdesktop-9.0" />
<TypeForwarding From="WindowsBase" FromVersion="9.0.0.0" To="System.Xaml" ToVersion="9.0.0.0" FrameworkAlternate="windowsdesktop-9.0" />
</TypeForwardingChain>
<Interfaces />
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8;netframework-4.8.1">
<AttributeName Language="C#">[System.Runtime.CompilerServices.TypeForwardedFrom("PresentationCore, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.TypeForwardedFrom("PresentationCore, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35")>]</AttributeName>
</Attribute>
</Attributes>
<Docs>
<summary>Represents a service that can use application context to resolve a provided relative URI to an absolute URI.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
<xref:System.Windows.Markup.IUriContext> implemented as a service enables type converters to use an application-specific context that might be able to complete a URI-type property.
Type converters and markup extensions can query for <xref:System.Windows.Markup.IUriContext> as a service on the service context that is provided by a XAML object writer, when the XAML object writer invokes value conversion behavior. For more information, see [Type Converters and Markup Extensions for XAML](/dotnet/framework/xaml-services/type-converters-and-markup-extensions-for-xaml) and [Service Contexts Available to Type Converters and Markup Extensions](/dotnet/framework/xaml-services/service-contexts-available-to-type-converters-and-markup-extensions).
<xref:System.Windows.Markup.IUriContext> is not just for value conversion and service context. Class logic for UI elements or other classes that support containment might also implement <xref:System.Windows.Markup.IUriContext> services as a recognized pattern that child elements can call for base URI information, or store base URI information that is obtained from XAML parsing of the root element.
In previous versions of the .NET Framework, this interface existed in the WPF-specific assembly PresentationCore. In .NET Framework 4, <xref:System.Windows.Markup.IUriContext> is in the System.Xaml assembly. For more information, see [Types Migrated from WPF to System.Xaml](/dotnet/framework/xaml-services/types-migrated-from-wpf-to-system-xaml).
## WPF Usage Notes
Example scenarios for <xref:System.Windows.Markup.IUriContext> exist in WPF.
As an example of a value converter, the <xref:System.Windows.Media.FontFamilyConverter> class can use a relative URI that is provided for properties such as <xref:System.Windows.Controls.Page.FontFamily%2A?displayProperty=nameWithType>, if <xref:System.Windows.Markup.IUriContext> is available as a service on the <xref:System.ComponentModel.ITypeDescriptorContext> input.
As an example of the element case, <xref:System.Windows.Documents.Hyperlink> implements <xref:System.Windows.Markup.IUriContext> so that it can pass through base URI values when parsed, which then modifies <xref:System.Windows.Documents.Hyperlink.NavigateUri%2A>.
]]></format>
</remarks>
<related type="Article" href="/dotnet/desktop-wpf/xaml-services/type-converters-and-markup-extensions">Type Converters and Markup Extensions for XAML</related>
</Docs>
<Members>
<Member MemberName="BaseUri">
<MemberSignature Language="C#" Value="public Uri BaseUri { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Uri BaseUri" />
<MemberSignature Language="DocId" Value="P:System.Windows.Markup.IUriContext.BaseUri" />
<MemberSignature Language="VB.NET" Value="Public Property BaseUri As Uri" />
<MemberSignature Language="F#" Value="member this.BaseUri : Uri with get, set" Usage="System.Windows.Markup.IUriContext.BaseUri" />
<MemberSignature Language="C++ CLI" Value="public:
 property Uri ^ BaseUri { Uri ^ get(); void set(Uri ^ value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Xaml</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>PresentationCore</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>WindowsBase</AssemblyName>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Uri</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets the base URI of the current application context.</summary>
<value>The base URI of the application context.</value>
<remarks>To be added.</remarks>
<related type="Article" href="/dotnet/desktop-wpf/xaml-services/type-converters-and-markup-extensions">Type Converters and Markup Extensions for XAML</related>
</Docs>
</Member>
</Members>
</Type>