Partager via


PackUriHelper.Create Méthode

Définition

Crée un URI à en-tête pack.

Surcharges

Create(Uri)

Crée un URI à en-tête pack qui pointe vers un package.

Create(Uri, Uri)

Crée un URI de pack en fonction d’un URI de Package et de l’URI d’un composant dans le package.

Create(Uri, Uri, String)

Crée un URI de pack en fonction d’un URI de Package, de l’URI d’un composant dans le package et d’un fragment « # » à ajouter.

Remarques

Le tableau suivant illustre des exemples de cas pour la Create méthode .

packageUri partUri fragment URI de pack retourné
http://www.proseware.com/mypackage.pkg /page1.xaml #intro pack ://http :,,www.proseware.com,mypackage.pkg/page1.xaml#intro
http://www.proseware.com/mypackage.pkg /page2.xaml null pack ://http :,,www.proseware.com,mypackage.pkg/page2.xaml
http://www.proseware.com/mypackage.pkg /a/page4.xaml null pack ://http :,,www.proseware.com,mypackage.pkg/a/page4.xaml
http://www.proseware.com/mypackage.pkg /%41/%61.xml null pack ://http :,,www.proseware.com,mypackage.pkg/A/a.xml
http://www.proseware.com/mypackage.pkg /%25XY.xml null pack ://http :,,www.proseware.com,mypackage.pkg/%25XY.xml
http://www.proseware.com/mypackage.pkg /a/page5.xaml #summary pack ://http :,,www.proseware.com,mypackage.pkg/a/page5.xaml#summary
http://www.proseware.com/packages.aspx?pkg04 /page1.xaml #intro pack ://http :,,www.proseware.com,packages.aspx%3fpkg04/page1.xaml#intro
http://www.proseware.com/mypackage.pkg null null pack ://http :,,www.proseware.com,mypackage.pkg
ftp://ftp.proseware.com/packages/mypackage1.abc /a/mydoc.xaml null pack ://ftp :,,ftp.proseware.com,packages,mypackage1.abc/a/mydoc.xaml
file:///d:/packages/mypackage2.pkg /a/bar.xaml #xref pack ://file :,,,d :,packages,mypackage2.pkg/a/bar.xaml#xref

La composition d’un URI de pack est un processus en plusieurs étapes. Par exemple, une étape de la formation d’un URI de pack consiste à remplacer les caractères de barre oblique (/) du par packageUri des virgules (,).

Pour plus d’informations sur la conversion de chaînes et la façon dont les URI de pack sont formés, consultez l’Annexe A.4 « Exemples de conversion de chaîne » et l’Annexe B.3 « Composition d’un URI de pack » dans la spécification Open Packaging Conventions disponible en téléchargement dans Spécifications et téléchargements de licences.

Create(Uri)

Source:
PackUriHelper.PackUriScheme.cs
Source:
PackUriHelper.PackUriScheme.cs
Source:
PackUriHelper.PackUriScheme.cs

Crée un URI à en-tête pack qui pointe vers un package.

public:
 static Uri ^ Create(Uri ^ packageUri);
public static Uri Create (Uri packageUri);
static member Create : Uri -> Uri
Public Shared Function Create (packageUri As Uri) As Uri

Paramètres

packageUri
Uri

URI du Package référencé.

Retours

Uri

URI à en-tête pack pour le Package référencé par le packageUri donné.

Exceptions

packageUri a la valeur null.

packageUri n’est pas un URI absolu.

Exemples

L’exemple suivant montre comment utiliser la Create méthode pour définir un URI de pack qui référence un package.

// ------------------------ GetFixedDocument --------------------------
/// <summary>
///   Returns the fixed document at a given URI within
///   the currently open XPS package.</summary>
/// <param name="fixedDocUri">
///   The URI of the fixed document to return.</param>
/// <returns>
///   The fixed document at a given URI
///   within the current XPS package.</returns>
private FixedDocument GetFixedDocument(Uri fixedDocUri)
{
    FixedDocument fixedDocument = null;

    // Create the URI for the fixed document within the package. The URI
    // is used to set the Parser context so fonts & other items can load.
    Uri tempUri = new Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute);
    ParserContext parserContext = new ParserContext();
    parserContext.BaseUri = PackUriHelper.Create(tempUri);

    // Retrieve the fixed document.
    PackagePart fixedDocPart = _xpsPackage.GetPart(fixedDocUri);
    if (fixedDocPart != null)
    {
        object fixedObject =
            XamlReader.Load(fixedDocPart.GetStream(), parserContext);
        if (fixedObject != null)
            fixedDocument = fixedObject as FixedDocument;
    }

    return fixedDocument;
}// end:GetFixedDocument()
' ------------------------ GetFixedDocument --------------------------
''' <summary>
'''   Returns the fixed document at a given URI within
'''   the currently open XPS package.</summary>
''' <param name="fixedDocUri">
'''   The URI of the fixed document to return.</param>
''' <returns>
'''   The fixed document at a given URI
'''   within the current XPS package.</returns>
Private Function GetFixedDocument(ByVal fixedDocUri As Uri) As FixedDocument
    Dim fixedDocument As FixedDocument = Nothing

    ' Create the URI for the fixed document within the package. The URI
    ' is used to set the Parser context so fonts & other items can load.
    Dim tempUri As New Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute)
    Dim parserContext As New ParserContext()
    parserContext.BaseUri = PackUriHelper.Create(tempUri)

    ' Retrieve the fixed document.
    Dim fixedDocPart As PackagePart = _xpsPackage.GetPart(fixedDocUri)
    If fixedDocPart IsNot Nothing Then
        Dim fixedObject As Object = XamlReader.Load(fixedDocPart.GetStream(), parserContext)
        If fixedObject IsNot Nothing Then
            fixedDocument = TryCast(fixedObject, FixedDocument)
        End If
    End If

    Return fixedDocument
End Function ' end:GetFixedDocument()

Remarques

packageUri ne peut pas être spécifié en tant que null ou vide.

Le tableau suivant illustre des exemples de cas pour Create.

packageUri URI de pack retourné
http://www.proseware.com/mypackage.pkg pack ://http :,,www.proseware.com,mypackage.pkg
ftp://ftp.proseware.com/packages/mypackage1.abc pack ://ftp :,,ftp.proseware.com,packages,mypackage1.abc
file:///d:/packages/mypackage2.pkg pack ://file :,,,d :,packages,mypackage2.pkg

La composition d’un URI de pack est un processus en plusieurs étapes. Par exemple, une étape de la formation d’un URI de pack consiste à remplacer les caractères de barre oblique (/) du par packageUri des virgules (,).

Pour plus d’informations sur la conversion de chaînes et la façon dont les URI de pack sont formés, consultez l’Annexe A.4 « Exemples de conversion de chaîne » et l’Annexe B.3 « Composition d’un URI de pack » dans la spécification Open Packaging Conventions disponible en téléchargement dans Spécifications et téléchargements de licences.

Voir aussi

S’applique à

Create(Uri, Uri)

Source:
PackUriHelper.PackUriScheme.cs
Source:
PackUriHelper.PackUriScheme.cs
Source:
PackUriHelper.PackUriScheme.cs

Crée un URI de pack en fonction d’un URI de Package et de l’URI d’un composant dans le package.

public:
 static Uri ^ Create(Uri ^ packageUri, Uri ^ partUri);
public static Uri Create (Uri packageUri, Uri partUri);
public static Uri Create (Uri packageUri, Uri? partUri);
static member Create : Uri * Uri -> Uri
Public Shared Function Create (packageUri As Uri, partUri As Uri) As Uri

Paramètres

packageUri
Uri

L'URI du Package.

partUri
Uri

URI du PackagePart dans le package.

Retours

Uri

URI à en-tête pack du PackagePart donné.

Exceptions

packageUri a la valeur null.

packageUri n’est pas un URI absolu.

- ou -

partUri n’est pas une syntaxe d’URI de partie valide.

Exemples

L’exemple suivant montre comment utiliser la Create(Uri) méthode pour définir un URI de pack qui référence un package.

// ------------------------ GetFixedDocument --------------------------
/// <summary>
///   Returns the fixed document at a given URI within
///   the currently open XPS package.</summary>
/// <param name="fixedDocUri">
///   The URI of the fixed document to return.</param>
/// <returns>
///   The fixed document at a given URI
///   within the current XPS package.</returns>
private FixedDocument GetFixedDocument(Uri fixedDocUri)
{
    FixedDocument fixedDocument = null;

    // Create the URI for the fixed document within the package. The URI
    // is used to set the Parser context so fonts & other items can load.
    Uri tempUri = new Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute);
    ParserContext parserContext = new ParserContext();
    parserContext.BaseUri = PackUriHelper.Create(tempUri);

    // Retrieve the fixed document.
    PackagePart fixedDocPart = _xpsPackage.GetPart(fixedDocUri);
    if (fixedDocPart != null)
    {
        object fixedObject =
            XamlReader.Load(fixedDocPart.GetStream(), parserContext);
        if (fixedObject != null)
            fixedDocument = fixedObject as FixedDocument;
    }

    return fixedDocument;
}// end:GetFixedDocument()
' ------------------------ GetFixedDocument --------------------------
''' <summary>
'''   Returns the fixed document at a given URI within
'''   the currently open XPS package.</summary>
''' <param name="fixedDocUri">
'''   The URI of the fixed document to return.</param>
''' <returns>
'''   The fixed document at a given URI
'''   within the current XPS package.</returns>
Private Function GetFixedDocument(ByVal fixedDocUri As Uri) As FixedDocument
    Dim fixedDocument As FixedDocument = Nothing

    ' Create the URI for the fixed document within the package. The URI
    ' is used to set the Parser context so fonts & other items can load.
    Dim tempUri As New Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute)
    Dim parserContext As New ParserContext()
    parserContext.BaseUri = PackUriHelper.Create(tempUri)

    ' Retrieve the fixed document.
    Dim fixedDocPart As PackagePart = _xpsPackage.GetPart(fixedDocUri)
    If fixedDocPart IsNot Nothing Then
        Dim fixedObject As Object = XamlReader.Load(fixedDocPart.GetStream(), parserContext)
        If fixedObject IsNot Nothing Then
            fixedDocument = TryCast(fixedObject, FixedDocument)
        End If
    End If

    Return fixedDocument
End Function ' end:GetFixedDocument()

Remarques

packageUri ne peut pas être spécifié comme null ou vide.

Si partUri a la valeur null, l’URI de pack retourné pointe vers le package.

Le tableau suivant illustre des exemples de cas pour la Create méthode .

packageUri partUri URI de pack retourné
http://www.proseware.com/mypackage.pkg /page2.xaml pack ://http :,,www.proseware.com,mypackage.pkg/page2.xaml
http://www.proseware.com/mypackage.pkg /a/page4.xaml pack ://http :,,www.proseware.com,mypackage.pkg/a/page4.xaml
http://www.proseware.com/mypackage.pkg /%41/%61.xml pack ://http :,,www.proseware.com,mypackage.pkg/A/a.xml
http://www.proseware.com/mypackage.pkg /%25XY.xml pack ://http :,,www.proseware.com,mypackage.pkg/%25XY.xml
http://www.proseware.com/mypackage.pkg null pack ://http :,,www.proseware.com,mypackage.pkg
ftp://ftp.proseware.com/packages/mypackage1.abc /a/mydoc.xaml pack ://ftp :,,ftp.proseware.com,packages,mypackage1.abc/a/mydoc.xaml
file:///d:/packages/mypackage2.pkg /a/bar.xaml pack ://file :,,,d :,packages,mypackage2.pkg/a/bar.xaml

La composition d’un URI de pack est un processus en plusieurs étapes. Par exemple, une étape de la formation d’un URI de pack consiste à remplacer les caractères de barre oblique (/) du par packageUri des virgules (,).

Pour plus d’informations sur la conversion de chaînes et la façon dont les URI de pack sont formés, consultez l’Annexe A.4 « Exemples de conversion de chaîne » et l’Annexe B.3 « Composition d’un URI de pack » dans la spécification Open Packaging Conventions disponible en téléchargement dans Spécifications et téléchargements de licences.

Voir aussi

S’applique à

Create(Uri, Uri, String)

Source:
PackUriHelper.PackUriScheme.cs
Source:
PackUriHelper.PackUriScheme.cs
Source:
PackUriHelper.PackUriScheme.cs

Crée un URI de pack en fonction d’un URI de Package, de l’URI d’un composant dans le package et d’un fragment « # » à ajouter.

public:
 static Uri ^ Create(Uri ^ packageUri, Uri ^ partUri, System::String ^ fragment);
public static Uri Create (Uri packageUri, Uri partUri, string fragment);
public static Uri Create (Uri packageUri, Uri? partUri, string? fragment);
static member Create : Uri * Uri * string -> Uri
Public Shared Function Create (packageUri As Uri, partUri As Uri, fragment As String) As Uri

Paramètres

packageUri
Uri

L'URI du Package.

partUri
Uri

URI du PackagePart dans le package.

fragment
String

Référence « # » qui identifie un élément dans la partie du package.

Retours

Uri

URI à en-tête pack qui identifie le package spécifié, la partie du package et le fragment.

Exceptions

packageUri a la valeur null.

packageUri n’est pas un URI absolu.

- ou -

partUri n’est pas une syntaxe d’URI de partie valide.

- ou -

fragment est vide ou commence par « # ».

Exemples

L’exemple suivant montre comment utiliser la Create(Uri) méthode pour définir un URI de pack qui référence un package.

// ------------------------ GetFixedDocument --------------------------
/// <summary>
///   Returns the fixed document at a given URI within
///   the currently open XPS package.</summary>
/// <param name="fixedDocUri">
///   The URI of the fixed document to return.</param>
/// <returns>
///   The fixed document at a given URI
///   within the current XPS package.</returns>
private FixedDocument GetFixedDocument(Uri fixedDocUri)
{
    FixedDocument fixedDocument = null;

    // Create the URI for the fixed document within the package. The URI
    // is used to set the Parser context so fonts & other items can load.
    Uri tempUri = new Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute);
    ParserContext parserContext = new ParserContext();
    parserContext.BaseUri = PackUriHelper.Create(tempUri);

    // Retrieve the fixed document.
    PackagePart fixedDocPart = _xpsPackage.GetPart(fixedDocUri);
    if (fixedDocPart != null)
    {
        object fixedObject =
            XamlReader.Load(fixedDocPart.GetStream(), parserContext);
        if (fixedObject != null)
            fixedDocument = fixedObject as FixedDocument;
    }

    return fixedDocument;
}// end:GetFixedDocument()
' ------------------------ GetFixedDocument --------------------------
''' <summary>
'''   Returns the fixed document at a given URI within
'''   the currently open XPS package.</summary>
''' <param name="fixedDocUri">
'''   The URI of the fixed document to return.</param>
''' <returns>
'''   The fixed document at a given URI
'''   within the current XPS package.</returns>
Private Function GetFixedDocument(ByVal fixedDocUri As Uri) As FixedDocument
    Dim fixedDocument As FixedDocument = Nothing

    ' Create the URI for the fixed document within the package. The URI
    ' is used to set the Parser context so fonts & other items can load.
    Dim tempUri As New Uri(_xpsDocumentPath, UriKind.RelativeOrAbsolute)
    Dim parserContext As New ParserContext()
    parserContext.BaseUri = PackUriHelper.Create(tempUri)

    ' Retrieve the fixed document.
    Dim fixedDocPart As PackagePart = _xpsPackage.GetPart(fixedDocUri)
    If fixedDocPart IsNot Nothing Then
        Dim fixedObject As Object = XamlReader.Load(fixedDocPart.GetStream(), parserContext)
        If fixedObject IsNot Nothing Then
            fixedDocument = TryCast(fixedObject, FixedDocument)
        End If
    End If

    Return fixedDocument
End Function ' end:GetFixedDocument()

Remarques

packageUri ne peut pas être spécifié en tant que null ou vide.

Si partUri a la valeur null, l’URI de pack retourné pointe vers le package.

fragment ne peut pas être une chaîne vide, mais peut être spécifié en tant que null. Lorsqu’elle n’est pas spécifiée comme null, la fragment chaîne doit commencer par un caractère « # ». Pour plus d’informations sur la syntaxe des fragment références, consultez la section 3.5 « Fragment » de la RFC 3986.

Le tableau suivant illustre des exemples de cas pour la Create méthode .

packageUri partUri fragment URI de pack retourné
http://www.proseware.com/mypackage.pkg /page1.xaml #intro pack ://http :,,www.proseware.com,mypackage.pkg/page1.xaml#intro
http://www.proseware.com/mypackage.pkg /page2.xaml null pack ://http :,,www.proseware.com,mypackage.pkg/page2.xaml
http://www.proseware.com/mypackage.pkg /a/page4.xaml null pack ://http :,,www.proseware.com,mypackage.pkg/a/page4.xaml
http://www.proseware.com/mypackage.pkg /%41/%61.xml null pack ://http :,,www.proseware.com,mypackage.pkg/A/a.xml
http://www.proseware.com/mypackage.pkg /%25XY.xml null pack ://http :,,www.proseware.com,mypackage.pkg/%25XY.xml
http://www.proseware.com/mypackage.pkg /a/page5.xaml #summary pack ://http :,,www.proseware.com,mypackage.pkg/a/page5.xaml#summary
http://www.proseware.com/packages.aspx?pkg04 /page1.xaml #intro pack ://http :,,www.proseware.com,packages.aspx%3fpkg04/page1.xaml#intro
http://www.proseware.com/mypackage.pkg null null pack ://http :,,www.proseware.com,mypackage.pkg
ftp://ftp.proseware.com/packages/mypackage1.abc /a/mydoc.xaml null pack ://ftp :,,ftp.proseware.com,packages,mypackage1.abc/a/mydoc.xaml
file:///d:/packages/mypackage2.pkg /a/bar.xaml #xref pack ://file :,,,d :,packages,mypackage2.pkg/a/bar.xaml#xref

La composition d’un URI de pack est un processus en plusieurs étapes. Par exemple, une étape de la formation d’un URI de pack consiste à remplacer les caractères de barre oblique (/) du par packageUri des virgules (,).

Pour plus d’informations sur la conversion de chaînes et la façon dont les URI de pack sont formés, consultez l’Annexe A.4 « Exemples de conversion de chaîne » et l’Annexe B.3 « Composition d’un URI de pack » dans la spécification Open Packaging Conventions disponible en téléchargement dans Spécifications et téléchargements de licences.

Voir aussi

S’applique à