Data Standard의 모든 대화상자는 확장자가 XAML(Extensible Application Markup Language) 파일 기반입니다. XAML 파일을 수정하여 Data Standard 대화상자를 사용자 지정합니다.
XAML 파일은 사용되는 컨트롤(레이블, 텍스트 상자, 콤보 상자 등) 및 컨트롤이 바인딩되는 CAD 또는 Vault 특성을 포함하여 Data Standard 대화상자의 배치를 설명합니다.
XAML 파일은 XML 파일이며 모든 텍스트/ XML 편집기로 편집할 수 있습니다. 무료 XML 편집기로는 Microsoft XML 메모장 또는 XML 형식의 다른 편집기를 사용하는 것이 좋습니다. 최상의 편집 작업을 수행하려면 Visual Studio(Express 이상)를 사용하는 것이 좋습니다. XAML 구문은 대소문자를 구분하기 때문에 대문자 기능 및 오타 확인 기능이 있는 편집기를 사용하는 것이 좋습니다.
Data Standard 대화상자에서 정보를 자세히, 간단히 또는 다르게 표시하려면 XAML 파일을 편집합니다. 구성 폴더에 있는 PS1 파일은 대화상자 동작을 제어합니다.
이 항목에서는 가장 많이 사용하는 컨트롤에 대한 간략한 설명을 제공합니다. 이러한 컨트롤에 다른 컨트롤에 대한 자세한 내용은 Microsoft 도움말 페이지에서 찾을 수 있습니다.
각 XAML 파일에는 여러 섹션이 있으며 리소스, 스타일 및 컨트롤 섹션이 대부분의 사용됩니다.
리소스 섹션에서는 컨트롤 섹션에서 재사용할 수 있는 정의가 있습니다. 예를 들어, 회사 색상이 녹색이면 컨트롤의 모든 문자가 초록색으로 표시되도록 정의할 수 있습니다.
트리거는 스타일 섹션에 있습니다. 지정된 상태(예: 새 레코드 편집 또는 기존 레코드 편집)에 따라 트리거는 컨트롤 모양 또는 동작을 정의합니다. 하지만 더 복잡한 동작은 PS1 파일에 정의되어 있습니다.
컨트롤은 섹션 또는 배치 영역은 일반적으로 컨트롤 <Grid>
로 시작합니다. 그리드는 대화상자를 Excel 테이블과 같이 행 및 열로 분할합니다. 설계 요구에 따라 셀을 결합 및 분할합니다. 각 셀에 단순 텍스트에 대한 하나 이상의 컨트롤(예: 레이블) 또는 텍스트 입력에 대한 텍스트 상자를 배치할 수 있습니다.
XAML 파일 배치는 행 및 열이 있는 테이블과 유사합니다. 이렇게 하면 대화상자 및 해당 컨트롤은 동적으로 됩니다. 즉, 마우스를 사용하여 크기를 조정할 경우 컨트롤에서 역시 창 크기를 자동으로 조정합니다. 또한 고정 좌표를 사용할 수 있지만 이 경우 대화상자의 크기를 사용자가 조정하거나 일부 사용자가 더 큰 창 글꼴을 구성하면 대화상자에서 컨트롤이 좌표를 기억하고 있어서 잠재적으로 겹치거나 대화상자에서 사용 가능한 공간을 소비하지 않습니다. 이러한 이유로 Autodesk에서는 이 테이블 접근을 사용하고 모든 컨트롤을 정의된 셀 내부에서 확장합니다.
대화상자는 테이블과 같아서 대화상자를 설계할 때 필요한 열과 행 수를 생각합니다. 일반적으로 두 개의 열이 좋습니다.왼쪽 하나는 레이블의 고정 폭이고 오른쪽 하나는 컨트롤의 동적 폭으로 합니다. 이것은 또한 기본 대화상자를 만드는 방법입니다. 필요한 행 수와 행 정의에 따라 그리드에서 정의됩니다. 그리드 안의 모든 컨트롤에는 행 및 열에 대한 참조가 있습니다((항상 0부터 시작). 그래서 컨트롤이 적절히 표시됩니다.
XML 및 XAML에서 모든 키워드는 연령층(
그리드(Grid)는 행과 열로 이루어진 테이블 형식 구조에서 모든 항목을 조정하는 배치 패널입니다. 모든 셀(셀은 행과 열 조합으로 고유하게 구성됨)은 레이블 및 텍스트 상자와 같은 여러 컨트롤을 포함할 수 있습니다.
이것이 그리드의 기본 구조입니다. Grid.RowDefinition 부분에서 그리드에 필요한 행을 정의해야 합니다. Height 30은 높이의 고정 값을 정의하며 나중에 변경할 수 없습니다. "auto" 값을 사용하는 경우 행에 동적 높이가 적용되므로 컨트롤에 따라 행의 두께가 바뀔 수 있습니다. 같은 값이 열 폭에도 적용됩니다.
행과 열을 정의한 후에, 컨트롤을 추가할 수 있습니다(예: 레이블 및 텍스트 상자). 컨트롤은 두 특성, 즉 Grid.Column 및 Grid.Row에 첨부해야 합니다. 이러한 특성은 그리드에서 컨트롤 위치를 정의합니다. 첫 번째 행은 0, 두 번째 행은 1과 같이 위치 순서대로 번호를 지정합니다.
레이블(Label)은 사용자가 편집할 수 없는 필드 이름입니다. 레이블의 용도를 나타내는 문자를 포함합니다. 이 문자를 통해 사용자는 해당 텍스트 상자 또는 콤보 상자에 삽입해야 하는 값의 유형을 알 수 있습니다. 예를 들어 주석들이라는 레이블은 빈 텍스트 상자 옆에 배치할 수 있습니다. 그러면 사용자는 해당 텍스트 상자에 주석들을 입력해야 함을 알 수 있습니다.
레이블에는 Content 특성이 있습니다. 이 특성은 레이블에 대해 표시되는 문자입니다.
<Label Content="sample" Grid.Row ="0" Grid.Colum="0"/>
기본 대화상자에는 이 <Label Content="{Binding UIString\[LBL2\]}" ....>
같은 코드 문자열이 있으며, 여기서 내용은 현지화된 문자에 바인딩됩니다. 이 구문은 대화상자에서 텍스트를 다른 언어로 표시하는 경우 사용합니다. 프로젝트에서 하나의 언어만 필요하면, 표시하려는 텍스트를 설정합니다. 대화상자를 현지화해야 하는 경우, 현지화 구문을 사용합니다. 자세한 내용은 현지화를 참고하십시오.
텍스트 상자는 편집할 수 있는 필드입니다. Data Standard는 입력된 값을 읽어 다른 작업에 사용할 수 있습니다.
텍스트 상자에는 다음 특성이 있어야 합니다.
content="Enter Comments Here"
라고 입력하면 대화상자가 열릴 때 텍스트 상자에 '여기에 주석 입력'이라는 메시지가 표시됩니다.<ComboBox Name="MaterialCombo" Text="{Binding Prop[Cost].Value}" Grid.Column="3" Grid.Row="6" ItemsSource="{Binding Prop[Cost].ListValues}"/>
버튼(Button)은 검색, 저장 등의 이벤트를 트리거하는 간편한 방법을 사용자에게 제공하는 사용자 인터페이스 요소입니다. 버튼에는 Command 특성이 있어야 합니다. 이 명령 특성은 버튼을 클릭할 때 실행되는 작업을 식별합니다.
<Button Command="{Binding PsCmd[MyCommand]}" Grid.Column="1" Margin="0,5,0,5" Width="80">Click</Button>
명령은 명령 작업을 주어진 PowerShell 함수와 연결에 도움이 되는 PsCmd
키워드로 바인딩됩니다. CommandParameter="my args"
속성을 사용하여 함수에 인수를 전달할 수 있습니다. 그런 다음 인수는 함수에서 $dsParam
변수와 같이 사용할 수 있습니다.
이러한 구성요소 중 하나를 사용하여 Vault 파일 특성을 제어하거나 변경하려면 "{Binding Prop[myProp ].Value}"
를 이해해야 합니다.
바인딩(Binding)을 통해 특정 CAD 또는 Vault 파일 특성에 값을 매핑할 수 있습니다. 예를 들어 특정 텍스트 상자에 내용을 입력할 때마다 제목 특성이 자동으로 업데이트되도록 텍스트 상자의 문자를 제목 특성에 바인딩할 수 있습니다. 바인딩은 특성 변경을 자동화하여 최종 사용자의 작업을 줄이는 효율적인 방법입니다.
Prop[ ]
는 바인딩을 위한 기본 함수입니다. 이를 사용하여 파일(CAD 및 Vault) 특성 또는 적절한 객체(폴더, 항목, 사용자 객체 등)에 액세스할 수 있습니다. 텍스트 상자를 엔지니어 특성에 매핑하려면 <TextBox text="{Binding Prop[Engineer].Value}"/>
라고 작성합니다. 텍스트 상자가 작성될 때 Prop[ ]
는 해당 특성의 값을 반환합니다. 텍스트 상자가 업데이트될 때마다 Prop[ ]
함수가 매핑된 파일 특성에 새 값을 쓴다는 알림이 표시됩니다.
Visual Studio를 사용하여 .xaml 파일을 편집할 수 있습니다. Visual Studio를 사용하면 요소를 쉽게 배치하고 맞춤법 실수를 방지할 수 있습니다.
Visual Studio 설정 예제:
이제 새 프로젝트에 MainWindow.xaml 탭, MainWindow.xam.cs 탭 등이 표시됩니다. 이러한 탭은 단순히 .xaml 파일을 편집하기 위해 제공되는 환경이며 필요하지는 않습니다. .xaml을 편집하려는 경우에는 .xaml 파일에 링크하면 되며, 프로젝트로 .xaml을 가져오지 않아도 됩니다.
솔루션 탐색기에서 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 추가 > 기존 항목으로 이동합니다.
솔루션 탐색기에서 .xaml 파일을 찾은 다음 링크로 추가를 선택합니다.
.xaml 파일이 솔루션 탐색기에 표시되면 두 번 클릭합니다.
로드 문제라는 오류가 표시됩니다.
Visual Studio 창 아래쪽의 오류 리스트에서 어셈블리 및 특성 또는 리소스가 없다는 오류를 찾습니다.
솔루션 탐색기로 이동하여 참조를 마우스 오른쪽 버튼으로 클릭합니다.
참조 추가를 선택합니다.
찾아보기 탭을 선택하고 검색:
CAD에 대한 변경 사항이 있는 경우 솔루션 탐색기에서 수정하기를 원하는 .cfg 파일을 선택합니다.
대화상자는 설계 창에서 표시됩니다. 이 대화상자의 영역을 선택할 수 있으며, 그러면 Visual Studio에서 xaml 파일의 해당 부분으로 이동하게 됩니다. 필드 삽입 또는 수정을 시작합니다. 자세한 내용은 Data Standard 대화상자를 참고하십시오.
<Grid.RowDefinitions>
및 <RowDefinition .../>
를 찾을 수 있습니다. 새 행을 표시할 위치에 <RowDefinition/>
을 추가합니다. 특성 높이를 해당하는 값으로 설정합니다(고정 값, 자동(최소 공간) 또는 *(최대 공간)).Grid.Row
및 Grid.Column
속성을 사용하여 컨트롤이 배치되는 행과 열을 정의할 수 있습니다. 또한 컨트롤에 대한 바인딩을 정의하여 데이터를 컨트롤 및 특성 간에 흐르게 할 수 있습니다. CAD에 대해 변경을 원하는 경우 해당 CFG 파일에서 역시 특성을 구성해야 합니다.Grid.Row
속성으로 증분하여 아래로 이동해야 합니다.