Az adatszabványsablon útvonalának testreszabása a Vault tárban

Alapértelmezés szerint az Új adatszabvány funkció a Vault tár $\Templates mappájában keres dokumentumsablonokat. Ezt az útvonalat módosíthatja az Adatszabvány XAML-fájlban. A rendszergazda ezenfelül beállíthatja, hogy különböző alkalmazásokhoz különböző sablonmappákat használjon a rendszer (pl. egy mappát az AutoCAD sablonokhoz, egy másikat az Inventor sablonokhoz).

Működés

Az Adatszabványokra vonatkozó alapértelmezett Új fájl párbeszédpanel tartalmaz egy Dokumentumtípus nevű legördülő listát.

Amikor a felhasználó kiválaszt egy opciót a Dokumentumtípus listából, és az OK gombra kattint, az Új adatszabványfájl funkció az adott dokumentumtípussal társított Vault mappában keres sablonokat. A rendszer a sablon alapján hozza létre az új fájlt.

A sablon útvonalának beállítása az Új szabványfájl párbeszédpanelen

Adjon meg más sablonútvonalat a Vault tárban az Adatszabvány XAML-fájl alábbi szakaszának módosításával.

<?xml version="1.0" encoding="utf-8"?>
<WPF:MainWindow xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" x:Name="MainWindow" xmlns:WPF="clr-namespace:CreateObject.WPF;assembly=CreateObject" AllowsTransparency="False" Background="#F0F0F0" MinWidth="500" MinHeight="518" MaxHeight="518">
    <Window.Resources>
        <!------------------------------------------------------------------------------------------------->
        <!-- This XmlDataProvider is used for defining Name/TemplatePath pairs that are used in the combo box "Document Type" and can be easily extended -->
        <XmlDataProvider x:Key="DocTypes"
                         XPath="/DocTypeData">                        
            <x:XData>
                <DocTypeData xmlns="">
                    <DocTypeInfo>
                        <Name>Inventor Part</Name>
                        <TemplatePath>$\Templates\Inventor\IPT</TemplatePath>
                    </DocTypeInfo>
                    <DocTypeInfo>
                        <Name>Inventor Assembly</Name>
                        <TemplatePath>$\Templates\Inventor\IAM</TemplatePath>
                    </DocTypeInfo>
                    <DocTypeInfo>
                        <Name>Inventor Drawings</Name>
                        <TemplatePath>$\Templates\Inventor\IDW</TemplatePath>
                    </DocTypeInfo>
                    <DocTypeInfo>
                        <Name>AutoCAD Drawings</Name>
                        <TemplatePath>$\Templates\AutoCAD</TemplatePath>
                    </DocTypeInfo>
                </DocTypeData>
            </x:XData>
        </XmlDataProvider>
        <!------------------------------------------------------------------------------------------------->
        ...

A <Name> elem határozza meg a legördülő listában megjelenített értéket az Új fájl párbeszédpanelen. A <TemplatePath> elemet a felhasználó nem látja, a rendszer ezt a Nézetmodellen belüli „TemplatePath” változó meghatározására használja.

A „Dokumentumtípus” legördülő lista a következőképp néz ki:

...
<Label Content="Document Type" Grid.Row="2" Grid.Column="0" />
<ComboBox ItemsSource="{Binding Source={StaticResource DocTypes}, XPath=DocTypeInfo}"
          Name="DocTypeCombo"
          Grid.Row="2"
          Grid.Column="1"
          IsEnabled="{Binding IsNewEntryDialog}"
          DisplayMemberPath="Name"
          SelectedValuePath="TemplatePath"
          SelectedValue="{Binding TemplatePath}"
          SelectedIndex="0"></ComboBox>
...

A DisplayMemberPath attribútum határozza meg, hogy az adatforrás melyik eleme jelenik meg a legördülő listában. Ebben az esetben ezt „Név”-re állítottuk.

A SelectedValuePath attribútum határozza meg, hogy a rendszer az adatforrás („TemplatePath”) melyik elemét használja a sablonútvonal értékeként.

A SelectedValue ="{Binding TemplatePath}" attribútum határozza meg a Nézetmodellben kiválasztott sablonútvonalat. Az új, „TemplatePath” nevű kötelező tulajdonságot hozzá kell adni a Nézetmodellhez.