프로젝트

일반

사용자정보

개정판 b10671a4

IDb10671a480ee667530061d40af578b518e10b556
상위 e16a4c3f
하위 3d918d31

김태성이(가) 5년 이상 전에 추가함

layout 변경

Change-Id: Iee33e49e17ec1fd14b2820f01f619a99ae17147e

차이점 보기:

KCOM.sln
38 38
EndProject
39 39
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Markus.Mvvm.ToolKit", "Markus.Mvvm.ToolKit\Markus.Mvvm.ToolKit.csproj", "{9EFE95D6-9985-422A-A76F-285C8CF73617}"
40 40
EndProject
41
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "문서", "문서", "{21A2BEE3-6FC9-4A6F-8CE2-1DF86816BE4A}"
42
	ProjectSection(SolutionItems) = preProject
43
		테스트.txt = 테스트.txt
44
	EndProjectSection
45
EndProject
41 46
Global
42
	GlobalSection(Performance) = preSolution
43
		HasPerformanceSessions = true
44
	EndGlobalSection
45 47
	GlobalSection(SolutionConfigurationPlatforms) = preSolution
46 48
		Debug|Any CPU = Debug|Any CPU
47 49
		Debug|x64 = Debug|x64
......
253 255
	GlobalSection(Performance) = preSolution
254 256
		HasPerformanceSessions = true
255 257
	EndGlobalSection
258
	GlobalSection(Performance) = preSolution
259
		HasPerformanceSessions = true
260
	EndGlobalSection
256 261
EndGlobal
KCOM/App.xaml
21 21
                <ResourceDictionary Source="/Telerik.Windows.Themes.Office2016;component/Themes/Telerik.Windows.Controls.Docking.xaml"/>-->
22 22

  
23 23
                <!--<ResourceDictionary Source="/Telerik.Windows.Themes.Office2016;component/Themes/Telerik.Windows.Controls.Docking.xaml"/>-->
24
                <ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/System.Windows.xaml"/>
24
                <!--<ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/System.Windows.xaml"/>
25 25
                <ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/Telerik.Windows.Controls.xaml"/>
26
                <ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/Telerik.Windows.Controls.Input.xaml"/>
26
                <ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/Telerik.Windows.Controls.Input.xaml"/>-->
27 27
                <!--<ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/Telerik.Windows.Controls.RibbonView.xaml"/>-->
28 28
                <!--<ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/Telerik.Windows.Controls.Docking.xaml"/>-->
29 29
            </ResourceDictionary.MergedDictionaries>
KCOM/App.xaml.cs
55 55
        {
56 56
            get
57 57
            {
58
                return DesignerProperties.GetIsInDesignMode(new DependencyObject());
58
                try
59
                {
60
                    return DesignerProperties.GetIsInDesignMode(new DependencyObject());
61
                }
62
                catch (Exception)
63
                {
64
                    return false;
65
                }
59 66
            }
60 67
            private set { }
61 68
        }
......
118 125

  
119 126
        public App()
120 127
        {
121
            Telerik.Windows.Controls.StyleManager.ApplicationTheme = new Telerik.Windows.Controls.VisualStudio2013Theme();
128
            Telerik.Windows.Controls.StyleManager.ApplicationTheme = new Telerik.Windows.Controls.Office2016Theme();
122 129
        }
123 130

  
124 131
        protected override async void OnStartup(StartupEventArgs e)
KCOM/Controls/FavoritePanel.xaml.cs
29 29
        public FavoritePanel()
30 30
        {
31 31
            //InitializeComponent();
32
            App.splashString(ISplashMessage.FAVORITEPANEL);
33
            this.Loaded += FavoritePanel_Loaded;
34 32

  
33
            if (!App.IsDesignMode)
34
            {
35
                App.splashString(ISplashMessage.FAVORITEPANEL);
36
                this.Loaded += FavoritePanel_Loaded;
37
            }
35 38
        }
36 39

  
37 40
        private void FavoritePanel_Loaded(object sender, RoutedEventArgs e)
KCOM/KCOM.csproj
210 210
    <Reference Include="System.Xaml">
211 211
      <RequiredTargetFramework>4.0</RequiredTargetFramework>
212 212
    </Reference>
213
    <Reference Include="Telerik.Windows.Controls, Version=2019.1.220.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
214
      <HintPath>..\lib\RCWPF\2019.1.220.40\Telerik.Windows.Controls.dll</HintPath>
213
    <Reference Include="Telerik.Windows.Controls, Version=2019.3.917.45, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
214
      <HintPath>..\lib\RCWPF\2019.3.917.45\Telerik.Windows.Controls.dll</HintPath>
215 215
      <Private>True</Private>
216 216
    </Reference>
217
    <Reference Include="Telerik.Windows.Controls.Docking, Version=2019.1.220.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
218
      <HintPath>..\lib\RCWPF\2019.1.220.40\Telerik.Windows.Controls.Docking.dll</HintPath>
217
    <Reference Include="Telerik.Windows.Controls.Data, Version=2019.3.917.45, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
218
      <HintPath>..\lib\RCWPF\2019.3.917.45\Telerik.Windows.Controls.Data.dll</HintPath>
219 219
      <Private>True</Private>
220 220
    </Reference>
221
    <Reference Include="Telerik.Windows.Controls.GridView, Version=2019.1.220.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
222
      <HintPath>..\lib\RCWPF\2019.1.220.40\Telerik.Windows.Controls.GridView.dll</HintPath>
221
    <Reference Include="Telerik.Windows.Controls.Docking, Version=2019.3.917.45, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
222
      <HintPath>..\lib\RCWPF\2019.3.917.45\Telerik.Windows.Controls.Docking.dll</HintPath>
223 223
      <Private>True</Private>
224 224
    </Reference>
225
    <Reference Include="Telerik.Windows.Controls.Input, Version=2019.1.220.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
226
      <HintPath>..\lib\RCWPF\2019.1.220.40\Telerik.Windows.Controls.Input.dll</HintPath>
225
    <Reference Include="Telerik.Windows.Controls.GridView, Version=2019.3.917.45, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
226
      <HintPath>..\lib\RCWPF\2019.3.917.45\Telerik.Windows.Controls.GridView.dll</HintPath>
227 227
      <Private>True</Private>
228 228
    </Reference>
229
    <Reference Include="Telerik.Windows.Controls.Navigation, Version=2019.1.220.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
230
      <HintPath>..\lib\RCWPF\2019.1.220.40\Telerik.Windows.Controls.Navigation.dll</HintPath>
229
    <Reference Include="Telerik.Windows.Controls.Input, Version=2019.3.917.45, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
230
      <HintPath>..\lib\RCWPF\2019.3.917.45\Telerik.Windows.Controls.Input.dll</HintPath>
231 231
      <Private>True</Private>
232 232
    </Reference>
233
    <Reference Include="Telerik.Windows.Controls.RibbonView, Version=2019.1.220.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
234
      <HintPath>..\lib\RCWPF\2019.1.220.40\Telerik.Windows.Controls.RibbonView.dll</HintPath>
233
    <Reference Include="Telerik.Windows.Controls.Navigation, Version=2019.3.917.45, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
234
      <HintPath>..\lib\RCWPF\2019.3.917.45\Telerik.Windows.Controls.Navigation.dll</HintPath>
235 235
      <Private>True</Private>
236 236
    </Reference>
237
    <Reference Include="Telerik.Windows.Data, Version=2019.1.220.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
238
      <HintPath>..\lib\RCWPF\2019.1.220.40\Telerik.Windows.Data.dll</HintPath>
237
    <Reference Include="Telerik.Windows.Controls.RibbonView, Version=2019.3.917.45, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
238
      <HintPath>..\lib\RCWPF\2019.3.917.45\Telerik.Windows.Controls.RibbonView.dll</HintPath>
239 239
      <Private>True</Private>
240 240
    </Reference>
241
    <Reference Include="Telerik.Windows.Themes.VisualStudio2013, Version=2018.1.122.40, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
242
      <SpecificVersion>False</SpecificVersion>
243
      <HintPath>..\packages\Telerik.Windows.Themes.VisualStudio2013.dll</HintPath>
241
    <Reference Include="Telerik.Windows.Data, Version=2019.3.917.45, Culture=neutral, PublicKeyToken=5803cfa389c90ce7, processorArchitecture=MSIL">
242
      <HintPath>..\lib\RCWPF\2019.3.917.45\Telerik.Windows.Data.dll</HintPath>
243
      <Private>True</Private>
244 244
    </Reference>
245 245
    <Reference Include="ToggleSwitch, Version=1.1.2.0, Culture=neutral, PublicKeyToken=8637099990568f75, processorArchitecture=MSIL">
246 246
      <HintPath>..\packages\ToggleSwitch.1.1.2\lib\net40-client\ToggleSwitch.dll</HintPath>
KCOM/KCOM.csproj.user
13 13
    <VerifyUploadedFiles>false</VerifyUploadedFiles>
14 14
  </PropertyGroup>
15 15
  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
16
    <StartArguments>eyJEb2N1bWVudEl0ZW1JRCI6IjQwMDAwMTQyIiwiYlBhcnRuZXIiOmZhbHNlLCJDcmVhdGVGaW5hbFBERlBlcm1pc3Npb24iOmZhbHNlLCJOZXdDb21tZW50UGVybWlzc2lvbiI6dHJ1ZSwiUHJvamVjdE5PIjoiMDAwMDAwIiwiVXNlcklEIjoiZG9mdGVjaCIsIk1vZGUiOjB9</StartArguments>
16
    <StartArguments>eyJEb2N1bWVudEl0ZW1JRCI6MTc4LCJiUGFydG5lciI6ZmFsc2UsIkNyZWF0ZUZpbmFsUERGUGVybWlzc2lvbiI6dHJ1ZSwiTmV3Q29tbWVudFBlcm1pc3Npb24iOnRydWUsIlByb2plY3ROTyI6IjExMTExMSIsIlVzZXJJRCI6ImFkbWluIiwiTW9kZSI6MCwicElkIjoiUDAwMDAwMDAwMDE4IiwidUlkIjoiVTAwMDAwMDAwMDA0In0=/</StartArguments>
17 17
  </PropertyGroup>
18 18
  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
19 19
    <StartArguments>eyJEb2N1bWVudEl0ZW1JRCI6MTYwLCJiUGFydG5lciI6ZmFsc2UsIkNyZWF0ZUZpbmFsUERGUGVybWlzc2lvbiI6dHJ1ZSwiTmV3Q29tbWVudFBlcm1pc3Npb24iOnRydWUsIlByb2plY3ROTyI6IjExMTExMSIsIlVzZXJJRCI6ImFkbWluIiwiTW9kZSI6MCwicElkIjoiUDAwMDAwMDAwMDE4IiwidUlkIjoiVTAwMDAwMDAwMDA1In0=/</StartArguments>
KCOM/MainWindow.xaml.cs
43 43
        
44 44
        ProgressControl progressControl = null;
45 45
        string destfilepath = string.Empty;
46
        static MainWindow()
47
        {
48
            StyleManager.ApplicationTheme = new VisualStudio2013Theme();
49
            RadRibbonWindow.IsWindowsThemeEnabled = false;
50
        }
46 51

  
47 52
        public MainWindow()
48 53
        {
KCOM/ViewModel/BiddersViewModel.cs
91 91

  
92 92
        public BiddersViewModel()
93 93
        {
94
            if (App.IsDesignMode)
95
                return;
96

  
94 97
            try
95 98
            {
96 99
                if (pemssServiceClient == null)
......
102 105
            }
103 106
            catch (Exception ex)
104 107
            {
105

  
106
                throw;
108
                System.Diagnostics.Debug.WriteLine(ex);
107 109
            }
108 110
        }
109 111

  
KCOM/ViewModel/RequirementViewModel.cs
91 91

  
92 92
        public RequirementViewModel()
93 93
        {
94
            if (App.IsDesignMode)
95
                return;
96

  
94 97
            try
95 98
            {
96 99
                if (pemssServiceClient == null)
......
103 106
            catch (Exception ex)
104 107
            {
105 108

  
106
                throw;
109
                System.Diagnostics.Debug.WriteLine(ex);
107 110
            }
108 111
        }
109 112

  
KCOM/Views/BiddersView.xaml
11 11
        xmlns:convert="clr-namespace:KCOM.Converters"
12 12
        xmlns:Behaviors="clr-namespace:KCOM.Behaviors"
13 13
        xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
14
        mc:Ignorable="d" d:DesignHeight="768" d:DesignWidth="350" DataContext="{DynamicResource ViewModel}">
14
             xmlns:controls1="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.Data"
15
             mc:Ignorable="d" d:DesignHeight="768" d:DesignWidth="350" DataContext="{DynamicResource ViewModel}">
15 16
    <UserControl.Resources>
16 17
        <viewmodel:BiddersViewModel x:Key="ViewModel"/>
17 18
        <convert:StringMultiLineConvert x:Key="StringMultiLineConvert"/>
......
50 51
        <telerik:RadToggleButton Width="15" Height="15"  Command="{Binding RefreshCommand}">
51 52
                <Image Stretch="Fill" Source="/KCOM;component/Resources/Images/MenuImage/Refresh.png"/>
52 53
            </telerik:RadToggleButton>
53
        
54
                <telerik:RadGridView>
55
                    
56
                </telerik:RadGridView>
54 57
            </WrapPanel>
55 58
        </Grid>
56 59
        
57
        <telerik:RadGridView Grid.Row="2" AutoGenerateColumns="False" ItemsSource="{Binding RequirementList}" ShowGroupPanel="False"
58
                              CanUserFreezeColumns="False" x:Name="Gridview" SelectedItem="{Binding SelectRequirement}"
59
                              RowIndicatorVisibility="Collapsed" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ColumnWidth="*"
60
                              IsExpandedBinding="{Binding IsExpanded,Mode=TwoWay}" IsExpandableBinding="{Binding IsExpandable, Mode=TwoWay}"
61
                             GridLinesVisibility="Horizontal" HorizontalGridLinesBrush="Orange">
62
            <i:Interaction.Behaviors>
63
                <Behaviors:ColumnFilterBehavior DefaultOperator="Contains"/>
64
            </i:Interaction.Behaviors>
65
            <telerik:RadGridView.ChildTableDefinitions>
66
                <telerik:GridViewTableDefinition/>
67
            </telerik:RadGridView.ChildTableDefinitions>
68
            <telerik:RadGridView.Columns>
69
                <telerik:GridViewDataColumn Header="Commant" IsReadOnly="True" IsFilterable="True"
70
                                            TextAlignment="Left" TextWrapping="WrapWithOverflow"
71
                                            DataMemberBinding="{Binding mdText,Converter={StaticResource StringMultiLineConvert}}">
72
                    <!--<telerik:GridViewDataColumn.CellTemplate>
73
                        <DataTemplate>
74
                            <controls:ExtendTextBox Text="{Binding mdText,Converter={StaticResource StringMultiLineConvert}}"/>
75
                        </DataTemplate>
76
                    </telerik:GridViewDataColumn.CellTemplate>-->
77
                </telerik:GridViewDataColumn>
78
            </telerik:RadGridView.Columns>
79
            <telerik:RadGridView.HierarchyChildTemplate>
80
                <DataTemplate>
81
                    <Grid Background="#FF999999">
82
                        <Grid.RowDefinitions>
83
                            <RowDefinition Height="Auto"/>
84
                            <RowDefinition Height="*"/>
85
                        </Grid.RowDefinitions>
86
                        <Grid.ColumnDefinitions>
87
                            <ColumnDefinition Width="10"/>
88
                            <ColumnDefinition Width="*"/>
89
                        </Grid.ColumnDefinitions>
90
                        <telerik:RadPathButton Width="100" Height="24" HorizontalAlignment="Left" Content="연결 추가" FontSize="12" Grid.ColumnSpan="2" Margin="15,2,2,2"
91
                                                    Command="{Binding AddVPCommentCommand, Source={StaticResource ViewModel}}"
92
                                                    ContentPlacement="Left"
93
                                                    CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=telerik:GridViewRow}}"
94
                                                   PathGeometry="m4,7l0,2l3,0l0,3l2,0l0,-3l3,0l0,-2l-3,0l0,-3l-2,0l0,3l-3,0zm4,9c-4.41828,0 -8,-3.58172 -8,-8c0,-4.41828 3.58172,-8 8,-8c4.41828,0 8,3.58172 8,8c0,4.41828 -3.58172,8 -8,8zm0,0" >
95
                            <telerik:RadPathButton.PathStyle>
96
                                <Style TargetType="Path">
97
                                    <Setter Property="Width" Value="18"/>
98
                                    <Setter Property="Height" Value="18"/>
99
                                    <Setter Property="Fill" Value="#FF0A93E2" />
100
                                    <Setter Property="Stretch" Value="Fill" />
101
                                    <Setter Property="HorizontalAlignment" Value="Right" />
102
                                    <Setter Property="VerticalAlignment" Value="Center" />
103
                                </Style>
104
                            </telerik:RadPathButton.PathStyle>
105
                        </telerik:RadPathButton>
106
                        <telerik:RadGridView x:Name="DetailGridView" GroupRenderMode="Flat" Grid.Row="1"
107
										 BorderThickness="0,1,0,1" Grid.Column="1"
108
										 GridLinesVisibility="Both"
109
                                             ScrollViewer.HorizontalScrollBarVisibility="Disabled"  ColumnWidth="*"
110
										 CanUserFreezeColumns="False" HorizontalGridLinesBrush="#FFB0AFAF"
111
										 AutoGenerateColumns="False" behavior:GridViewAutoWidthBehavior.IsEnabled="True"
112
										 ItemsSource="{Binding VpComments}"
113
										 ShowGroupPanel="False" SelectedItem="{Binding SelectVPComment, Source={StaticResource ViewModel}}"
114
										 IsReadOnly="True">
115
                            <i:Interaction.Triggers>
116
                                <i:EventTrigger  EventName="SelectionChanged">
117
                                    <i:InvokeCommandAction Command="{Binding SelectedVPCommentCommand, Source={StaticResource ViewModel}}"/>
118
                                </i:EventTrigger>
119
                            </i:Interaction.Triggers>
120
                            <telerik:RadGridView.Columns>
121
                                <telerik:GridViewDataColumn DataMemberBinding="{Binding createdByName}" Width="80" IsFilterable="False" IsReadOnly="True"
122
														Header="Create User" />
123
                                <telerik:GridViewDataColumn DataMemberBinding="{Binding comment}" TextAlignment="Left" IsReadOnly="True" TextTrimming="CharacterEllipsis" IsFilterable="False" 
124
														Header="Comment" />
125
                                <telerik:GridViewDataColumn DataMemberBinding="{Binding condition,Mode=TwoWay}" Header="Condition" Width="64"  IsReadOnly="True"/>
126
                                <telerik:GridViewDataColumn Width="24" IsFilterable="False" IsReadOnly="True">
127
                                    <telerik:GridViewDataColumn.CellTemplate>
128
                                        <DataTemplate>
129
                                            <telerik:RadPathButton ToolTip="Delete Comment" Height="22" Width="22"
130
                                                    Command="{Binding DelVPCommentCommand, Source={StaticResource ViewModel}}"
131
                                                    CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=telerik:GridViewRow}}" Background="{x:Null}" BorderBrush="{x:Null}"
132
                                                    PathGeometry="M108.319,108.319c-2.106,2.107-5.523,2.106-7.632-0.001l-0.003-0.003L70.159,77.79L39.63,108.318   c-2.106,2.108-5.523,2.107-7.634,0c-2.104-2.106-2.105-5.523,0-7.633l30.528-30.528l-30.54-30.541   c-2.106-2.104-2.106-5.521,0-7.631c2.105-2.107,5.522-2.107,7.633-0.001l30.541,30.541l30.528-30.527   c2.105-2.105,5.523-2.105,7.633,0c2.109,2.106,2.107,5.524,0,7.633L77.791,70.157l30.527,30.528   C110.427,102.794,110.427,106.212,108.319,108.319 M119.767,119.767c27.396-27.397,27.396-71.818,0-99.217   C92.37-6.849,47.947-6.85,20.547,20.548c-27.397,27.398-27.396,71.819,0.001,99.22C47.947,147.166,92.368,147.165,119.767,119.767">
133
                                            </telerik:RadPathButton>
134
                                        </DataTemplate>
135
                                    </telerik:GridViewDataColumn.CellTemplate>
136
                                </telerik:GridViewDataColumn>
137
                            </telerik:RadGridView.Columns>
138
                        </telerik:RadGridView>
139
                    </Grid>
140
                </DataTemplate>
141
            </telerik:RadGridView.HierarchyChildTemplate>
142
        </telerik:RadGridView>
143 60
    </Grid>
144 61
</UserControl>
KCOM/Views/MainMenu.xaml
538 538
                </telerik:RadPaneGroup>
539 539
            </telerik:RadSplitContainer>
540 540

  
541
            <telerik:RadSplitContainer Orientation="Vertical" InitialPosition="DockedRight" MaxWidth="450" Width="400">
541
            <telerik:RadSplitContainer Orientation="Vertical" InitialPosition="DockedRight">
542 542
                <telerik:RadPaneGroup telerik:StyleManager.Theme="Office2016">
543 543
                    <telerik:RadPane Header="PEMSS" Visibility="Visible" CanFloat="False"  CanUserClose="False"  ContextMenuTemplate="{x:Null}" IsPinned="True" telerik:StyleManager.Theme="Office2016" x:Name="pemssPanel">
544
                        <telerik:RadTabControl>
545
                            <telerik:RadTabControl.Items>
546
                                <telerik:RadTabItem Header="PEMSS">
547
                                <view:RequirementView/>
548
                                </telerik:RadTabItem>
549
                                <telerik:RadTabItem Header="Bidders">
550
                                    <view:BiddersView/>
551
                                </telerik:RadTabItem>
552
                            </telerik:RadTabControl.Items>
553
                        </telerik:RadTabControl>
544
                       
554 545
                    </telerik:RadPane>
555 546
                </telerik:RadPaneGroup>
556 547
                <telerik:RadPaneGroup telerik:StyleManager.Theme="Office2016">
......
578 569
            </telerik:RadSplitContainer>
579 570
            <telerik:RadSplitContainer Orientation="Horizontal" InitialPosition="DockedBottom">
580 571
                <telerik:RadPaneGroup telerik:StyleManager.Theme="Office2016" telerik:ProportionalStackPanel.RelativeSize="140, 100">
581
                    <telerik:RadPane Header="User information List"  CanFloat="False" CanUserClose="False"  ContextMenuTemplate="{x:Null}" telerik:StyleManager.Theme="Office2016"  x:Name="infoListPane">
582
                        <telerik:RadPane.TitleTemplate>
583
                            <DataTemplate>
584
                                <Grid>
585
                                    <Grid.ColumnDefinitions>
586
                                        <ColumnDefinition Width="*" />
587
                                        <ColumnDefinition Width="Auto" />
588
                                    </Grid.ColumnDefinitions>
589

  
590
                                    <StackPanel Orientation="Horizontal">
591
                                        <TextBlock Margin="1"
592
                                                   VerticalAlignment="Center"
593
                                                   Text="{Binding}" />
594
                                        <telerik:RadRibbonButton x:Name="btnConsolidate"
595
                                                                 VerticalAlignment="Center"
596
                                                                 Click="btnConsolidate_Click"
597
                                                                 Loaded="btnConsolidate_Loaded"
598
                                                                 telerik:StyleManager.Theme="Office2016"
599
                                                                 ToolTipService.ToolTip="Consolidate">
600
                                            <Border Background="#E9F0F8"
601
                                                    BorderBrush="#839AB3"
602
                                                    BorderThickness="1">
603
                                                <StackPanel Margin="1" Orientation="Horizontal">
604
                                                    <!--<Image Width="15" Source="/DeepView;component/Images/MenuImage/document-new.png" />-->
605
                                                    <TextBlock Margin="1"
606
                                                               VerticalAlignment="Center"
607
                                                               Foreground="Black"
608
                                                               Text="Consolidate" />
609
                                                </StackPanel>
610
                                            </Border>
611
                                        </telerik:RadRibbonButton>
612
                                        <telerik:RadRibbonButton x:Name="btnTeamConsolidate"
613
                                                                 VerticalAlignment="Center"
614
                                                                 Click="btnTeamConsolidate_Click"
615
                                                                 Loaded="btnTeamConsolidate_Loaded"
616
                                                                 telerik:StyleManager.Theme="Office2016"
617
                                                                 ToolTipService.ToolTip="Consolidate">
618
                                            <Border Background="#E9F0F8"
619
                                                    BorderBrush="#839AB3"
620
                                                    BorderThickness="1">
621
                                                <StackPanel Margin="1" Orientation="Horizontal">
622
                                                    <!--<Image Width="15" Source="/DeepView;component/Images/MenuImage/document-team.png" />-->
623
                                                    <TextBlock Margin="1"
624
                                                               VerticalAlignment="Center"
625
                                                               Foreground="Black"
626
                                                               Text="Team Consolidate" />
627
                                                </StackPanel>
628
                                            </Border>
629
                                        </telerik:RadRibbonButton>
630
                                        <telerik:RadRibbonButton x:Name="btnFinalPDF"
631
                                                                 VerticalAlignment="Center"
632
                                                                 Click="FinalPDFEvent"
633
                                                                 Loaded="btnFinalPDF_Loaded"
634
                                                                 telerik:StyleManager.Theme="Office2016"
635
                                                                 ToolTipService.ToolTip="FinalPDF">
636
                                            <Border Background="#E9F0F8"
637
                                                    BorderBrush="#839AB3"
638
                                                    BorderThickness="1">
639
                                                <StackPanel Margin="1" Orientation="Horizontal">
640
                                                    <!--<Image Width="15" Source="/DeepView;component/Images/MenuImage/final_pdf2.png" />-->
641
                                                    <TextBlock Margin="1"
642
                                                               VerticalAlignment="Center"
643
                                                               Foreground="Black"
644
                                                               Text="Merged PDF" />
645
                                                </StackPanel>
646
                                            </Border>
647
                                        </telerik:RadRibbonButton>
648
                                        <telerik:RadRibbonButton x:Name="btnConsolidateFinalPDF"
649
                                                                 VerticalAlignment="Center"
650
                                                                 Click="ConsolidateFinalPDFEvent"
651
                                                                 Loaded="btnConsolidateFinalPDF_Loaded"
652
                                                                 telerik:StyleManager.Theme="Office2016"
653
                                                                 ToolTipService.ToolTip="Consolidate &amp; FinalPDF">
654
                                            <Border Background="#E9F0F8"
655
                                                    BorderBrush="#839AB3"
656
                                                    BorderThickness="1">
657
                                                <StackPanel Margin="1" Orientation="Horizontal">
658
                                                    <!--<Image Width="15" Source="/DeepView;component/Images/MenuImage/final_pdf2.png" />-->
659
                                                    <TextBlock Margin="1"
660
                                                               VerticalAlignment="Center"
661
                                                               Foreground="Black"
662
                                                               Text="Consolidate &amp; Merged PDF" />
663
                                                </StackPanel>
664
                                            </Border>
665
                                        </telerik:RadRibbonButton>
666
                                        <!--<telerik:RadRibbonButton x:Name="btnAdjust"
667
                                                                 VerticalAlignment="Center"
668
                                                                 Click="btnAdjustEvent"
669
                                                                 Loaded="btnAdjust_Loaded"
670
                                                                 telerik:StyleManager.Theme="Office2016"
671
                                                                 ToolTipService.ToolTip="정합성 목록">
672
                                            <Border Background="#E9F0F8"
673
                                                    BorderBrush="#839AB3"
674
                                                    BorderThickness="1">
675
                                                <StackPanel Margin="1" Orientation="Horizontal">
676
                                                    --><!--<Image Width="15" Source="/DeepView;component/Images/MenuImage/final_pdf2.png" />--><!--
677
                                                    <TextBlock Margin="1"
678
                                                               VerticalAlignment="Center"
679
                                                               Foreground="Black"
680
                                                               Text="정합성 목록"/>
681
                                                </StackPanel>
682
                                            </Border>
683
                                        </telerik:RadRibbonButton>-->
684
                                    </StackPanel>
685
                                    <!--<StackPanel Grid.Column="1"
686
                                                HorizontalAlignment="Right"
687
                                                Orientation="Horizontal">
688
                                        <telerik:RadRibbonButton VerticalAlignment="Center"
689
                                                                 Click="ExpandButtonEvent_Click"
690
                                                                 Tag="CLOSE"
691
                                                                 telerik:StyleManager.Theme="Windows8"
692
                                                                 ToolTipService.ToolTip="Expand On">
693
                                        </telerik:RadRibbonButton>
694

  
695
                                        <telerik:RadRibbonButton VerticalAlignment="Center"
696
                                                                 Click="ExpandButtonEvent_Click"
697
                                                                 Tag="OPEN"
698
                                                                 telerik:StyleManager.Theme="Windows8"
699
                                                                 ToolTipService.ToolTip="Expand Off">
700
                                            <Image Width="15"
701
                                                   RenderTransformOrigin="0.5,0.5">
702
                                                <Image.RenderTransform>
703
                                                    <RotateTransform Angle="180" />
704
                                                </Image.RenderTransform>
705
                                            </Image>
706
                                        </telerik:RadRibbonButton>
707
                                    </StackPanel>-->
708
                                </Grid>
709
                            </DataTemplate>
710
                        </telerik:RadPane.TitleTemplate>
711
                        <telerik:RadGridView telerik:StyleManager.Theme="Office2013" ShowGroupPanel="True" ShowGroupFooters="False" AutoExpandGroups="True"  x:Name="gridViewMarkup"
572
                    <telerik:RadPane Header="Document Information"  CloseButtonVisibility="Collapsed">
573
                    <telerik:RadLayoutControl ScrollViewer.HorizontalScrollBarVisibility="Disabled" SelectedItem="{x:Null}">
574
                        <telerik:LayoutControlExpanderGroup IsExpandable="False" x:Name="infoListPane"  Header="User information List" telerik:StyleManager.Theme="Office2016">
575
                            <telerik:RadGridView telerik:StyleManager.Theme="Office2013" ShowGroupPanel="True" ShowGroupFooters="False" AutoExpandGroups="True"  x:Name="gridViewMarkup"
712 576
                                             AutoGenerateColumns="False" HorizontalContentAlignment="Center" SelectionChanged="gridViewMarkup_SelectionChanged" SelectionMode="Multiple"
713 577
                                             CanUserDeleteRows="True" CanUserInsertRows="False" IsFilteringAllowed="False" RowIndicatorVisibility="Collapsed" 
714 578
                                             CanUserSortColumns ="True" >
......
718 582
                                        <telerik:CountFunction Caption="Entries count : " />
719 583
                                    </telerik:GroupDescriptor.AggregateFunctions>
720 584
                                </telerik:GroupDescriptor>
721
                                
585

  
722 586
                            </telerik:RadGridView.GroupDescriptors>
723 587
                            <telerik:RadGridView.RowStyle>
724 588
                                <Style TargetType="telerik:GridViewRow">
......
813 677
                                        </DataTemplate>
814 678
                                    </telerik:GridViewDataColumn.CellTemplate>
815 679
                                </telerik:GridViewDataColumn>
816
                                
817 680
                                <telerik:GridViewDataColumn Header="DELETE"  IsReadOnly="True" Width="Auto">
818 681
                                    <telerik:GridViewDataColumn.CellTemplate>
819 682
                                        <DataTemplate>
......
823 686
                                </telerik:GridViewDataColumn>
824 687
                            </telerik:RadGridView.Columns>
825 688
                        </telerik:RadGridView>
826
                    </telerik:RadPane>
827
                </telerik:RadPaneGroup>
828
                <telerik:RadPaneGroup telerik:StyleManager.Theme="Office2016" telerik:ProportionalStackPanel.RelativeSize="100, 100">
829
                    <telerik:RadPane Header="Document History"  CanFloat="False" CanUserClose="False"  ContextMenuTemplate="{x:Null}" telerik:StyleManager.Theme="Office2016"  x:Name="historyPane">
830
                        <Grid>
689
                        </telerik:LayoutControlExpanderGroup>
690
                        <telerik:LayoutControlSplitter />
691
                        <telerik:LayoutControlExpanderGroup  IsExpandable="False" x:Name="historyPane" Header="Document History" telerik:StyleManager.Theme="Office2016">
692
                            <Grid>
831 693
                            <telerik:RadGridView telerik:StyleManager.Theme="Office2013" ShowGroupPanel="False" ShowGroupFooters="False" AutoExpandGroups="False"  x:Name="gridViewHistory"
832 694
                                             CanUserDeleteRows="True" CanUserInsertRows="False" IsFilteringAllowed="False" RowIndicatorVisibility="Collapsed" AutoGenerateColumns="False">
833 695
                                <telerik:RadGridView.Columns>
......
940 802
                            <telerik:RadBusyIndicator x:Name="gridViewHistory_Busy" IsBusy="False" telerik:StyleManager.Theme="Office2016"
941 803
                                                  BusyContent="Sync Data Loading"/>
942 804
                        </Grid>
805
                        </telerik:LayoutControlExpanderGroup>
806
                    </telerik:RadLayoutControl>
807
                    </telerik:RadPane>
808
                    <telerik:RadPane Header="PEMSS(Requirement and Bidders)" CloseButtonVisibility="Collapsed">
809
                        <telerik:RadTabControl>
810
                            <telerik:RadTabControl.Items>
811
                                <telerik:RadTabItem Header="PEMSS">
812
                                    <view:RequirementView/>
813
                                </telerik:RadTabItem>
814
                                <telerik:RadTabItem Header="Bidders">
815
                                    <view:BiddersView/>
816
                                </telerik:RadTabItem>
817
                            </telerik:RadTabControl.Items>
818
                        </telerik:RadTabControl>
943 819
                    </telerik:RadPane>
944 820
                </telerik:RadPaneGroup>
945 821
            </telerik:RadSplitContainer>
946

  
947

  
948 822
        </telerik:RadDocking>
949 823
    </Grid>
950 824
</UserControl>
KCOM/Views/RequirementView.xaml
11 11
        xmlns:convert="clr-namespace:KCOM.Converters"
12 12
        xmlns:Behaviors="clr-namespace:KCOM.Behaviors"
13 13
        xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
14
        mc:Ignorable="d" d:DesignHeight="768" d:DesignWidth="350" DataContext="{DynamicResource ViewModel}">
14
        mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="1000" DataContext="{DynamicResource ViewModel}">
15 15
    <UserControl.Resources>
16 16
        <viewmodel:RequirementViewModel x:Key="ViewModel"/>
17 17
        <convert:StringMultiLineConvert x:Key="StringMultiLineConvert"/>
......
24 24
            <i:InvokeCommandAction Command="{Binding ClosingCommand}"/>
25 25
        </i:EventTrigger>
26 26
    </i:Interaction.Triggers>
27
        <Grid x:Name="grid" Margin="2">
28
        <Grid.ColumnDefinitions>
29
            <ColumnDefinition Width="*"/>
30
        </Grid.ColumnDefinitions>
31
        <Grid.RowDefinitions>
32
            <RowDefinition Height="Auto"/>
33
            <RowDefinition Height="Auto"/>
34
            <RowDefinition/>
35
        </Grid.RowDefinitions>
36
        <Grid HorizontalAlignment="Right" Visibility="Collapsed">
37
            <Grid.ColumnDefinitions>
38
                <ColumnDefinition/>
39
                <ColumnDefinition Width="4"/>
40
                <ColumnDefinition/>
41
                <ColumnDefinition Width="4"/>
42
                <ColumnDefinition/>
43
            </Grid.ColumnDefinitions>
44
            <WrapPanel Grid.Row="1" HorizontalAlignment="Left" Orientation="Horizontal">
45
                <telerik:RadButton Content="추가" Background="#3d3d3d" Foreground="White" Margin="5,0" MinWidth="60" Command="{Binding AddVPCommentCommand}"/>
46
                <telerik:RadToggleButton Width="20" Height="20" Command="{Binding RefreshCommand}" Margin="3">
47
                    <Image Stretch="Fill" Source="/KCOM;component/Resources/Images/MenuImage/Refresh.png"/>
48
                </telerik:RadToggleButton>
49
                
50
        <telerik:RadToggleButton Width="15" Height="15"  Command="{Binding RefreshCommand}">
51
                <Image Stretch="Fill" Source="/KCOM;component/Resources/Images/MenuImage/Refresh.png"/>
52
            </telerik:RadToggleButton>
53
        
54
            </WrapPanel>
55
        </Grid>
56
        
57
        <telerik:RadGridView Grid.Row="2" AutoGenerateColumns="False" ItemsSource="{Binding RequirementList}" ShowGroupPanel="False"
27
    <telerik:RadLayoutControl  ScrollViewer.VerticalScrollBarVisibility="Disabled" ScrollViewer.HorizontalScrollBarVisibility="Disabled" SelectedItem="{x:Null}">
28
        <telerik:LayoutControlExpanderGroup IsExpandable="False" telerik:StyleManager.Theme="Office2016">
29
            <telerik:RadGridView telerik:StyleManager.Theme="Office2016" AutoGenerateColumns="False" ItemsSource="{Binding RequirementList}" ShowGroupPanel="False"
58 30
                              CanUserFreezeColumns="False" x:Name="Gridview" SelectedItem="{Binding SelectRequirement}"
59
                              RowIndicatorVisibility="Collapsed" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ColumnWidth="*"
31
                              RowIndicatorVisibility="Collapsed" ScrollViewer.HorizontalScrollBarVisibility="Disabled"
60 32
                              IsExpandedBinding="{Binding IsExpanded,Mode=TwoWay}" IsExpandableBinding="{Binding IsExpandable, Mode=TwoWay}"
61 33
                             GridLinesVisibility="Horizontal" HorizontalGridLinesBrush="Orange">
62
            <i:Interaction.Behaviors>
63
                <Behaviors:ColumnFilterBehavior DefaultOperator="Contains"/>
64
            </i:Interaction.Behaviors>
65
            <telerik:RadGridView.ChildTableDefinitions>
66
                <telerik:GridViewTableDefinition/>
67
            </telerik:RadGridView.ChildTableDefinitions>
68
            <telerik:RadGridView.Columns>
69
                <telerik:GridViewDataColumn Header="Commant" IsReadOnly="True" IsFilterable="True"
34
                <i:Interaction.Behaviors>
35
                    <Behaviors:ColumnFilterBehavior DefaultOperator="Contains"/>
36
                </i:Interaction.Behaviors>
37
                <telerik:RadGridView.Columns>
38
                    <telerik:GridViewDataColumn Header="Commant" IsReadOnly="True" IsFilterable="True"
70 39
                                            TextAlignment="Left" TextWrapping="WrapWithOverflow"
71 40
                                            DataMemberBinding="{Binding mdText,Converter={StaticResource StringMultiLineConvert}}">
72
                    <!--<telerik:GridViewDataColumn.CellTemplate>
73
                        <DataTemplate>
74
                            <controls:ExtendTextBox Text="{Binding mdText,Converter={StaticResource StringMultiLineConvert}}"/>
75
                        </DataTemplate>
76
                    </telerik:GridViewDataColumn.CellTemplate>-->
77
                </telerik:GridViewDataColumn>
78
            </telerik:RadGridView.Columns>
79
            <telerik:RadGridView.HierarchyChildTemplate>
80
                <DataTemplate>
81
                    <Grid Background="#FF999999">
82
                        <Grid.RowDefinitions>
83
                            <RowDefinition Height="Auto"/>
84
                            <RowDefinition Height="*"/>
85
                        </Grid.RowDefinitions>
86
                        <Grid.ColumnDefinitions>
87
                            <ColumnDefinition Width="10"/>
88
                            <ColumnDefinition Width="*"/>
89
                        </Grid.ColumnDefinitions>
90
                        <telerik:RadPathButton Width="100" Height="24" HorizontalAlignment="Left" Content="연결 추가" FontSize="12" Grid.ColumnSpan="2" Margin="15,2,2,2"
41
                    </telerik:GridViewDataColumn>
42
                </telerik:RadGridView.Columns>
43
            </telerik:RadGridView>
44
        </telerik:LayoutControlExpanderGroup>
45
        <telerik:LayoutControlSplitter/>
46
            <Grid >
47
                <Grid.RowDefinitions>
48
                    <RowDefinition Height="Auto"/>
49
                    <RowDefinition  Height="Auto"/>
50
                </Grid.RowDefinitions>
51
                <StackPanel>
52
                    <telerik:RadPathButton Width="100" HorizontalAlignment="Left" Content="연결 추가" FontSize="12" Grid.ColumnSpan="2" Margin="15,2,2,2"
91 53
                                                    Command="{Binding AddVPCommentCommand, Source={StaticResource ViewModel}}"
92
                                                    ContentPlacement="Left"
54
                                                    ContentPlacement="Left" telerik:StyleManager.Theme="Office2016"
93 55
                                                    CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=telerik:GridViewRow}}"
94 56
                                                   PathGeometry="m4,7l0,2l3,0l0,3l2,0l0,-3l3,0l0,-2l-3,0l0,-3l-2,0l0,3l-3,0zm4,9c-4.41828,0 -8,-3.58172 -8,-8c0,-4.41828 3.58172,-8 8,-8c4.41828,0 8,3.58172 8,8c0,4.41828 -3.58172,8 -8,8zm0,0" >
95
                            <telerik:RadPathButton.PathStyle>
96
                                <Style TargetType="Path">
97
                                    <Setter Property="Width" Value="18"/>
98
                                    <Setter Property="Height" Value="18"/>
99
                                    <Setter Property="Fill" Value="#FF0A93E2" />
100
                                    <Setter Property="Stretch" Value="Fill" />
101
                                    <Setter Property="HorizontalAlignment" Value="Right" />
102
                                    <Setter Property="VerticalAlignment" Value="Center" />
103
                                </Style>
104
                            </telerik:RadPathButton.PathStyle>
105
                        </telerik:RadPathButton>
106
                        <telerik:RadGridView x:Name="DetailGridView" GroupRenderMode="Flat" Grid.Row="1"
107
										 BorderThickness="0,1,0,1" Grid.Column="1"
57
                        <telerik:RadPathButton.PathStyle>
58
                            <Style TargetType="Path">
59
                                <Setter Property="Width" Value="18"/>
60
                                <Setter Property="Height" Value="18"/>
61
                                <Setter Property="Fill" Value="#FF0A93E2" />
62
                                <Setter Property="Stretch" Value="Fill" />
63
                                <Setter Property="HorizontalAlignment" Value="Right" />
64
                                <Setter Property="VerticalAlignment" Value="Center" />
65
                            </Style>
66
                        </telerik:RadPathButton.PathStyle>
67
                    </telerik:RadPathButton>
68
                </StackPanel>
69
                <telerik:RadGridView x:Name="DetailGridView" GroupRenderMode="Flat" Grid.Row="1"
70
										 BorderThickness="0,1,0,1" Grid.Column="1" telerik:StyleManager.Theme="Office2016"
108 71
										 GridLinesVisibility="Both"
109
                                             ScrollViewer.HorizontalScrollBarVisibility="Disabled"  ColumnWidth="*"
72
                                             ScrollViewer.HorizontalScrollBarVisibility="Disabled"  ColumnWidth="Auto"
110 73
										 CanUserFreezeColumns="False" HorizontalGridLinesBrush="#FFB0AFAF"
111 74
										 AutoGenerateColumns="False" behavior:GridViewAutoWidthBehavior.IsEnabled="True"
112
										 ItemsSource="{Binding VpComments}"
75
										 ItemsSource="{Binding SelectRequirement.VpComments}"
113 76
										 ShowGroupPanel="False" SelectedItem="{Binding SelectVPComment, Source={StaticResource ViewModel}}"
114
										 IsReadOnly="True">
115
                            <i:Interaction.Triggers>
116
                                <i:EventTrigger  EventName="SelectionChanged">
117
                                    <i:InvokeCommandAction Command="{Binding SelectedVPCommentCommand, Source={StaticResource ViewModel}}"/>
118
                                </i:EventTrigger>
119
                            </i:Interaction.Triggers>
120
                            <telerik:RadGridView.Columns>
121
                                <telerik:GridViewDataColumn DataMemberBinding="{Binding createdByName}" Width="80" IsFilterable="False" IsReadOnly="True"
77
										 IsReadOnly="True" VerticalAlignment="Top">
78
                    <i:Interaction.Triggers>
79
                        <i:EventTrigger  EventName="SelectionChanged">
80
                            <i:InvokeCommandAction Command="{Binding SelectedVPCommentCommand, Source={StaticResource ViewModel}}"/>
81
                        </i:EventTrigger>
82
                    </i:Interaction.Triggers>
83
                    <telerik:RadGridView.Columns>
84
                    <telerik:GridViewDataColumn DataMemberBinding="{Binding createdByName}"  Width="120" IsFilterable="False" IsReadOnly="True"
122 85
														Header="Create User" />
123
                                <telerik:GridViewDataColumn DataMemberBinding="{Binding comment}" TextAlignment="Left" IsReadOnly="True" TextTrimming="CharacterEllipsis" IsFilterable="False" 
86
                    <telerik:GridViewDataColumn DataMemberBinding="{Binding comment}" Width="200" TextAlignment="Left" IsReadOnly="True" TextTrimming="CharacterEllipsis" IsFilterable="False" 
124 87
														Header="Comment" />
125
                                <telerik:GridViewDataColumn DataMemberBinding="{Binding condition,Mode=TwoWay}" Header="Condition" Width="64"  IsReadOnly="True"/>
126
                                <telerik:GridViewDataColumn Width="24" IsFilterable="False" IsReadOnly="True">
127
                                    <telerik:GridViewDataColumn.CellTemplate>
128
                                        <DataTemplate>
129
                                            <telerik:RadPathButton ToolTip="Delete Comment" Height="22" Width="22"
88
                    <telerik:GridViewDataColumn DataMemberBinding="{Binding condition,Mode=TwoWay}" Header="Condition" Width="Auto"  IsReadOnly="True"/>
89
                        <telerik:GridViewDataColumn Width="Auto" Header="연결 제거" IsFilterable="False" IsReadOnly="True">
90
                            <telerik:GridViewDataColumn.CellTemplate>
91
                                <DataTemplate>
92
                                    <telerik:RadPathButton ToolTip="Delete Comment" Height="22" Width="22"
130 93
                                                    Command="{Binding DelVPCommentCommand, Source={StaticResource ViewModel}}"
131 94
                                                    CommandParameter="{Binding RelativeSource={RelativeSource AncestorType=telerik:GridViewRow}}" Background="{x:Null}" BorderBrush="{x:Null}"
132 95
                                                    PathGeometry="M108.319,108.319c-2.106,2.107-5.523,2.106-7.632-0.001l-0.003-0.003L70.159,77.79L39.63,108.318   c-2.106,2.108-5.523,2.107-7.634,0c-2.104-2.106-2.105-5.523,0-7.633l30.528-30.528l-30.54-30.541   c-2.106-2.104-2.106-5.521,0-7.631c2.105-2.107,5.522-2.107,7.633-0.001l30.541,30.541l30.528-30.527   c2.105-2.105,5.523-2.105,7.633,0c2.109,2.106,2.107,5.524,0,7.633L77.791,70.157l30.527,30.528   C110.427,102.794,110.427,106.212,108.319,108.319 M119.767,119.767c27.396-27.397,27.396-71.818,0-99.217   C92.37-6.849,47.947-6.85,20.547,20.548c-27.397,27.398-27.396,71.819,0.001,99.22C47.947,147.166,92.368,147.165,119.767,119.767">
133
                                            </telerik:RadPathButton>
134
                                        </DataTemplate>
135
                                    </telerik:GridViewDataColumn.CellTemplate>
136
                                </telerik:GridViewDataColumn>
137
                            </telerik:RadGridView.Columns>
138
                        </telerik:RadGridView>
139
                    </Grid>
140
                </DataTemplate>
141
            </telerik:RadGridView.HierarchyChildTemplate>
142
        </telerik:RadGridView>
143
    </Grid>
96
                                    </telerik:RadPathButton>
97
                                </DataTemplate>
98
                            </telerik:GridViewDataColumn.CellTemplate>
99
                        </telerik:GridViewDataColumn>
100
                    </telerik:RadGridView.Columns>
101
                </telerik:RadGridView>
102
            </Grid>
103
    </telerik:RadLayoutControl>
144 104
</UserControl>
KCOM/Views/TopMenu.xaml
1920 1920
                                </telerik:RadButton.Content>-->
1921 1921
                            <!--</telerik:RadButton>-->
1922 1922
            </telerik:RadRibbonTab>
1923
<!--
1923
            <telerik:RadRibbonTab Header="CONFIG">
1924
                <telerik:RadRibbonGroup DialogLauncherVisibility="Collapsed"
1925
                                        telerik:ScreenTip.Description="Application Config."
1926
                                        telerik:ScreenTip.Title="File" Header="Scale"
1927
                                        Visibility="Visible">
1928
                    <telerik:RadOrderedWrapPanel>
1929
                        <StackPanel Orientation="Horizontal">
1930
                            <telerik:RadButton Content="-"/>
1931
                            <telerik:RadSlider VerticalAlignment="Center" Width="180" Margin="10,0" Minimum="0.5" Maximum="1.5" LargeChange="0.2" TickFrequency="0.2" 
1932
                                               TickPlacement="BottomRight" Value="1" ValueChanged="AppScaleValue_Chnaged">
1933
                                <telerik:RadSlider.TickTemplate>
1934
                                    <DataTemplate>
1935
                                        <Grid>
1936
                                            <TextBlock Text="{Binding}" />
1937
                                        </Grid>
1938
                                    </DataTemplate>
1939
                                </telerik:RadSlider.TickTemplate>
1940
                            </telerik:RadSlider>
1941
                            <telerik:RadButton Content="+"/>
1942
                            <StackPanel>
1943
                                
1944
                            </StackPanel>
1945
                        </StackPanel>
1946
                        
1947
                    </telerik:RadOrderedWrapPanel>
1948
                </telerik:RadRibbonGroup>
1949
            </telerik:RadRibbonTab>
1950
            <!--
1924 1951
            <telerik:RadRibbonTab Header="OPTION">
1925 1952
                <telerik:RadRibbonGroup DialogLauncherVisibility="Collapsed"
1926 1953
                                        telerik:ScreenTip.Description="Show the Users options."
KCOM/Views/TopMenu.xaml.cs
33 33
                if (!App.ViewInfo.CreateFinalPDFPermission && !App.ViewInfo.NewCommentPermission)
34 34
                {
35 35
                    SAVE.Visibility = Visibility.Collapsed;
36
                }
36
                } 
37 37

  
38 38
                if (KCOM.Properties.Settings.Default.cad == 0)
39 39
                {
......
110 110
            
111 111
        }
112 112

  
113
        
113
        private void AppScaleValue_Chnaged(object sender, RoutedPropertyChangedEventArgs<double> e)
114
        {
115
            var windows = App.Current.Windows.OfType<MainWindow>();
116

  
117
            if (windows != null)
118
            {
119
                var grid = windows.First().FindChildByType<Grid>();
120

  
121
                if(grid != null)
122
                {
123
                    var scaler = grid.LayoutTransform as ScaleTransform;
124

  
125
                    if (scaler == null)
126
                    {
127
                        grid.LayoutTransform = new ScaleTransform(e.NewValue, e.NewValue);
128
                    }
129
                    else if (scaler.HasAnimatedProperties)
130
                    {
131
                        // Do nothing because the value is being changed by animation.
132
                        // Setting scaler.ScaleX will cause infinite recursion due to the
133
                        // binding specified in the XAML.
134
                    }
135
                    else
136
                    {
137
                        scaler.ScaleX = e.NewValue;
138
                        scaler.ScaleY = e.NewValue;
139
                    }
140
                }
141
            }
142
            
143
        }
114 144
    }
115 145
}
KCOM_Backup_2019.09.26_03.36.14/AbstractDatabase.cs
1
using System;
2
using System.Collections.Generic;
3
using System.Linq;
4
using System.Web;
5
using System.Data;
6
using System.Data.Common;
7

  
8
namespace KCOM
9
{
10
    public class ColInfo
11
    {
12
        public string Name { get; set; }
13
        public string DataType { get; set; }
14
    }
15

  
16
    /// <summary>
17
    /// Abstract base class for encapsulating provider independant database interactin logic.
18
    /// </summary>
19
    /// <remarks>Version 2.0</remarks>
20
    /// <typeparam name="CONNECTION_TYPE"><see cref="DbConnection"/> derived Connection type.</typeparam>
21
    /// <typeparam name="COMMAND_TYPE"><see cref="DbCommand"/> derived Command type.</typeparam>
22
    /// <typeparam name="ADAPTER_TYPE"><see cref="DbDataAdapater"/> derived Data Adapter type.</typeparam>
23
    public abstract class AbstractDatabase<CONNECTION_TYPE, COMMAND_TYPE, ADAPTER_TYPE> : IDisposable, IAbstractDatabase
24
        where CONNECTION_TYPE : DbConnection, new()
25
        where COMMAND_TYPE : DbCommand
26
        where ADAPTER_TYPE : DbDataAdapter, new()
27
    {
28
        #region : Connection :
29

  
30
        /// <summary>Gets the Connection object associated with the current instance.</summary>
31
        public DbConnection Connection
32
        {
33
            get
34
            {
35
                if (internal_currentConnection == null)
36
                {
37
                    internal_currentConnection = new CONNECTION_TYPE() { ConnectionString = GetConnectionString() };
38
                }
39
                return internal_currentConnection;
40
            }
41
        }
42
        private DbConnection internal_currentConnection = null;
43

  
44
        /// <summary>When overridden in derived classes returns the connection string for the database.</summary>
45
        /// <returns>The connection string for the database.</returns>
46
        protected abstract string GetConnectionString();
47

  
48
        #endregion
49

  
50
        #region : Commands :
51

  
52
        /// <summary>Gets a DbCommand object with the specified <see cref="DbCommand.CommandText"/>.</summary>
53
        /// <param name="sqlString">The SQL string.</param>
54
        /// <returns>A DbCommand object with the specified <see cref="DbCommand.CommandText"/>.</returns>
55
        public DbCommand GetSqlStringCommand(string sqlString)
56
        {
57
            if (this.Connection.State != ConnectionState.Open)
58
                this.Connection.Open();
59

  
60
            DbCommand cmd = this.Connection.CreateCommand();
61
            cmd.CommandType = CommandType.Text;
62
            cmd.CommandText = sqlString;
63
            cmd.CommandTimeout = 600; // 15.11.04 added by soohyun - Extend Time out of query
64
            return cmd;
65
        }
66

  
67
        /// <summary>Gets a DbCommand object with the specified <see cref="DbCommand.CommandText"/>.</summary>
68
        /// <param name="sqlStringFormat">The SQL string format.</param>
69
        /// <param name="args">The format arguments.</param>
70
        /// <returns>A DbCommand object with the specified <see cref="DbCommand.CommandText"/>.</returns>
71
        public DbCommand GetSqlStringCommand(string sqlStringFormat, params object[] args)
72
        {
73
            return GetSqlStringCommand(string.Format(sqlStringFormat, args));
74
        }
75

  
76
        /// <summary>Gets a DbCommand object for the specified Stored Procedure.</summary>
77
        /// <param name="storedProcName">The name of the stored procedure.</param>
78
        /// <returns>A DbCommand object for the specified Stored Procedure.</returns>
79
        public DbCommand GetStoredProcedureCommand(string storedProcName)
80
        {
81
            if (this.Connection.State != ConnectionState.Open)
82
                this.Connection.Open();
83

  
84
            DbCommand cmd = this.Connection.CreateCommand();
85
            cmd.CommandType = CommandType.StoredProcedure;
86
            cmd.CommandText = storedProcName;
87
            return cmd;
88
        }
89

  
90
        #region : Parameters :
91

  
92
        /// <summary>Adds an input parameter to the given <see cref="DbCommand"/>.</summary>
93
        /// <param name="cmd">The command object the parameter should be added to.</param>
94
        /// <param name="paramName">The identifier of the parameter.</param>
95
        /// <param name="paramType">The type of the parameter.</param>
96
        /// <param name="value">The value of the parameter.</param>
97
        /// <returns>The <see cref="DbParameter"/> that was created.</returns>
98
        public DbParameter AddInParameter(DbCommand cmd, string paramName, DbType paramType, object value)
99
        {
100
            return AddParameter(cmd, paramName, paramType, ParameterDirection.Input, value);
101
        }
102

  
103
        /// <summary>Adds an input parameter to the given <see cref="DbCommand"/>.</summary>
104
        /// <param name="cmd">The command object the parameter should be added to.</param>
105
        /// <param name="paramName">The identifier of the parameter.</param>
106
        /// <param name="paramType">The type of the parameter.</param>
107
        /// <param name="size">The maximum size in bytes, of the data table column to be affected.</param>
108
        /// <param name="value">The value of the parameter.</param>
109
        /// <returns>The <see cref="DbParameter"/> that was created.</returns>
110
        public DbParameter AddInParameter(DbCommand cmd, string paramName, DbType paramType, int size, object value)
111
        {
112
            DbParameter param = AddInParameter(cmd, paramName, paramType, value);
113
            param.Size = size;
114
            cmd.Parameters.Add(param);
115
            return param;
116
        }
117

  
118
        /// <summary>Adds the out parameter to the given <see cref="DbCommand"/></summary>
119
        /// <param name="cmd">The command object the parameter should be added to.</param>
120
        /// <param name="paramName">The identifier of the parameter.</param>
121
        /// <param name="paramType">The type of the parameter.</param>
122
        /// <param name="value">The value of the parameter.</param>
123
        /// <returns>The <see cref="DbParameter"/> that was created.</returns>
124
        public DbParameter AddOutParameter(DbCommand cmd, string paramName, DbType paramType, object value)
125
        {
126
            return AddParameter(cmd, paramName, paramType, ParameterDirection.Output, value);
127
        }
128

  
129
        /// <summary>Adds a parameter to the given <see cref="DbCommand"/>.</summary>
130
        /// <param name="cmd">The command object the parameter should be added to.</param>
131
        /// <param name="paramName">The identifier of the parameter.</param>
132
        /// <param name="paramType">The type of the parameter.</param>
133
        /// <param name="direction"><see cref="ParameterDirection"/> of the parameter.</param>
134
        /// <param name="value">The value of the parameter.</param>
135
        /// <returns>The <see cref="DbParameter"/> that was created.</returns>
136
        public DbParameter AddParameter(DbCommand cmd, string paramName,
137
                                            DbType paramType,
138
                                            ParameterDirection direction,
139
                                            object value)
140
        {
141
            DbParameter param = cmd.CreateParameter();
142
            param.DbType = paramType;
143
            param.ParameterName = paramName;
144
            param.Value = value;
145
            param.Direction = direction;
146
            cmd.Parameters.Add(param);
147
            return param;
148
        }
149

  
150
        /// <summary>Adds a parameter to the given <see cref="DbCommand"/>.</summary>
151
        /// <param name="cmd">The command object the parameter should be added to.</param>
152
        /// <param name="paramName">The identifier of the parameter.</param>
153
        /// <param name="paramType">The type of the parameter.</param>
154
        /// <param name="direction"><see cref="ParameterDirection"/> of the parameter.</param>
155
        /// <param name="size">The maximum size in bytes, of the data table column to be affected.</param>
156
        /// <param name="value">The value of the parameter.</param>
157
        /// <returns>The <see cref="DbParameter"/> that was created.</returns>
158
        public DbParameter AddParameter(DbCommand cmd, string paramName,
159
                                            DbType paramType,
160
                                            ParameterDirection direction,
161
                                            int size,
162
                                            object value)
163
        {
164
            DbParameter param = AddParameter(cmd, paramName, paramType, direction, value);
165
            param.Size = size;
166
            return param;
167
        }
168

  
169
        #endregion
170

  
171
        #region : Executes :
172

  
173
        /// <summary>Executes the specified command against the current connection.</summary>
174
        /// <param name="cmd">The command to be executed.</param>
175
        /// <returns>Result returned by the database engine.</returns>
176
        public int ExecuteNonQuery(DbCommand cmd)
177
        {
178
            if (this.Connection.State != ConnectionState.Open)
179
                this.Connection.Open();
180

  
181
            return cmd.ExecuteNonQuery();
182
        }
183

  
184
        public int ExecuteNonQuery(string sSql)
185
        {
186
            if (this.Connection.State != ConnectionState.Open)
187
                this.Connection.Open();
188

  
189
            return GetSqlStringCommand(sSql).ExecuteNonQuery();
190
        }
191

  
192
        /// <summary>Executes the specified command against the current connection.</summary>
193
        /// <param name="cmd">The command to be executed.</param>
194
        /// <param name="txn">The database transaction inside which the command should be executed.</param>
195
        /// <returns>Result returned by the database engine.</returns>
196
        public int ExecuteNonQuery(DbCommand cmd, DbTransaction txn)
197
        {
198
            if (this.Connection.State != ConnectionState.Open)
199
                this.Connection.Open();
200

  
201
            cmd.Transaction = txn;
202
            return cmd.ExecuteNonQuery();
203
        }
204

  
205
        /// <summary>Executes the specified command against the current connection.</summary>
206
        /// <param name="cmd">The command to be executed.</param>
207
        /// <returns>Result returned by the database engine.</returns>
208
        public DbDataReader ExecuteReader(DbCommand cmd)
209
        {
210
            if (this.Connection.State != ConnectionState.Open)
211
                this.Connection.Open();
212

  
213
            return cmd.ExecuteReader();
214
        }
215

  
216
        /// <summary>Executes the specified command against the current connection.</summary>
217
        /// <param name="cmd">The command to be executed.</param>
218
        /// <param name="behavior">One of the <see cref="System.Data.CommandBehavior"/> values.</param>
219
        /// <returns>Result returned by the database engine.</returns>
220
        public DbDataReader ExecuteReader(DbCommand cmd, CommandBehavior behavior)
221
        {
222
            if (this.Connection.State != ConnectionState.Open)
223
                this.Connection.Open();
224

  
225
            return cmd.ExecuteReader(behavior);
226
        }
227

  
228
        /// <summary>Executes the specified command against the current connection.</summary>
229
        /// <param name="cmd">The command to be executed.</param>
230
        /// <returns>Result returned by the database engine.</returns>
231
        public T ExecuteScalar<T>(DbCommand cmd, T defaultValue)
232
        {
233
            if (this.Connection.State != ConnectionState.Open)
234
                this.Connection.Open();
235

  
236
            object retVal = cmd.ExecuteScalar();
237
            if (null == retVal || DBNull.Value == retVal)
238
                return defaultValue;
239
            else
240
                return (T)retVal;
241
        }
242

  
243
        /// <summary>Executes the specified command against the current connection.</summary>
244
        /// <param name="cmd">The command to be executed.</param>
245
        /// <returns>Result returned by the database engine.</returns>
246
        public DataSet ExecuteDataSet(DbCommand cmd, DbTransaction txn = null)
247
        {
248
            ADAPTER_TYPE adapter = new ADAPTER_TYPE();
249
            if (null != txn) cmd.Transaction = txn;
250
            adapter.SelectCommand = (COMMAND_TYPE)cmd;
251

  
252
            DataSet retVal = new DataSet()
253
            {
254
                Locale = System.Globalization.CultureInfo.InvariantCulture
255
            };
256
            adapter.Fill(retVal);
257
            return retVal;
258
        }
259

  
260
        #endregion
261

  
262
        #endregion
263

  
264
        /// <summary>Begins a transaction.</summary>
265
        /// <returns>Created transaction.</returns>
266
        public DbTransaction BeginTransaction()
267
        {
268
            if (this.Connection.State != ConnectionState.Open)
269
                this.Connection.Open();
270
            return Connection.BeginTransaction();
271
        }
272

  
273
        #region : Consturction / Destruction :
274

  
275
        /// <summary>Disposes the resources associated with the current database connection.</summary>
276
        ~AbstractDatabase()
277
        {
278
            Dispose();
279
        }
280

  
281
        #region IDisposable Members
282

  
283
        /// <summary>Disposes the resources associated with the current database connection.</summary>
284
        public void Dispose()
285
        {
286
            if (null != internal_currentConnection)
287
            {
288
                internal_currentConnection.Dispose();
289
                internal_currentConnection = null;
290
            }
291
        }
292

  
293
        #endregion
294

  
295
        #endregion
296
    }
297
}
KCOM_Backup_2019.09.26_03.36.14/App.xaml
1
<Application
2
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4
             xmlns:local="clr-namespace:KCOM"
5
             xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" x:Class="KCOM.App"
6
             StartupUri="MainWindow.xaml">
7
    <Application.Resources>
8
        <ResourceDictionary>
9
            <ResourceDictionary.MergedDictionaries>
10
                <ResourceDictionary Source="Resources\Theme_Color.xaml"/>
11
                <ResourceDictionary/>
12
                <ResourceDictionary Source="Resources\DecodeImageTemplate.xaml"/>
13
                <ResourceDictionary Source="Resources\Theme_CustomControl.xaml"/>
14
                <ResourceDictionary Source="Assets\RadGridViewStyleResourceDictionary.xaml"/>
15
                <ResourceDictionary Source="Messenger\StyleDictionary.xaml"/>
16
                <ResourceDictionary Source="/MarkupToPDF;component/themes/generic.xaml"/>
17
                <!--<ResourceDictionary Source="/Telerik.Windows.Themes.Office2016;component/Themes/System.Windows.xaml"/>
18
                <ResourceDictionary Source="/Telerik.Windows.Themes.Office2016;component/Themes/Telerik.Windows.Controls.xaml"/>
19
                <ResourceDictionary Source="/Telerik.Windows.Themes.Office2016;component/Themes/Telerik.Windows.Controls.Input.xaml"/>
20
                <ResourceDictionary Source="/Telerik.Windows.Themes.Office2016;component/Themes/Telerik.Windows.Controls.RibbonView.xaml"/>
21
                <ResourceDictionary Source="/Telerik.Windows.Themes.Office2016;component/Themes/Telerik.Windows.Controls.Docking.xaml"/>-->
22

  
23
                <!--<ResourceDictionary Source="/Telerik.Windows.Themes.Office2016;component/Themes/Telerik.Windows.Controls.Docking.xaml"/>-->
24
                <ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/System.Windows.xaml"/>
25
                <ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/Telerik.Windows.Controls.xaml"/>
26
                <ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/Telerik.Windows.Controls.Input.xaml"/>
27
                <!--<ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/Telerik.Windows.Controls.RibbonView.xaml"/>-->
28
                <!--<ResourceDictionary Source="/Telerik.Windows.Themes.VisualStudio2013;component/Themes/Telerik.Windows.Controls.Docking.xaml"/>-->
29
            </ResourceDictionary.MergedDictionaries>
30
        </ResourceDictionary>
31
    </Application.Resources>
32
</Application>
KCOM_Backup_2019.09.26_03.36.14/App.xaml.cs
1

2
using KCOM.Common;
3
using KCOM.ServiceDeepView;
4
using System;
5
using System.Collections.Generic;
6
using System.ComponentModel;
7
using System.Configuration;
8
using System.Data;
9
using System.Diagnostics;
10
using System.IO;
11
using System.Linq;
12
using System.Net;
13
using System.Reflection;
14
using System.Runtime.CompilerServices;
15
using System.ServiceModel;
16
using System.Windows;
17
using System.Xml;
18
using log4net;
19
using System.Text;
20
using System.Runtime.InteropServices;
21
using KCOM.Views;
22
using System.Threading.Tasks;
23

  
24
[assembly: log4net.Config.XmlConfigurator(Watch = true)]
25
namespace KCOM
26
{
27
    public class OpenProperties
28
    {
29
        public string DocumentItemID { get; set; }
30
        public bool bPartner { get; set; }
31
        public bool CreateFinalPDFPermission { get; set; }
32
        public bool NewCommentPermission { get; set; }
33
        public string ProjectNO { get; set; }
34
        public string UserID { get; set; }
35
        public int Mode { get; set; }
36

  
37
        /// <summary>
38
        /// pemss에서 전달되는 ID
39
        /// </summary>
40
        public string pId { get; set; }
41

  
42
        /// <summary>
43
        /// pemss에서 전달되는 ID
44
        /// </summary>
45
        public string uId { get; set; }
46

  
47
        public string cId { get; set; }
48
    }
49
    /// <summary>
50
    /// App.xaml에 대한 상호 작용 논리
51
    /// </summary>
52
    public partial class App : Application
53
    {
54
        public static bool IsDesignMode
55
        {
56
            get
57
            {
58
                return DesignerProperties.GetIsInDesignMode(new DependencyObject());
59
            }
60
            private set { }
61
        }
62

  
63
        public static BasicHttpBinding _binding;
64
        public static EndpointAddress _EndPoint;
65
        public static EndpointAddress _PemssEndPoint;
66
        public static EndpointAddress _EndPoint_SaveLoad;
67
        public static EndpointAddress _EndPoint_Symbol;
68
        public static string UserID;
69
        public static string UserName;
70
        public static string UserIP;
71
        public static IKCOM.ViewInfo ViewInfo;
72
        public static IKCOM.PEMSSInfo PEMSSInfo;
73
        public static string urlHost;
74
        public static string urlPort;
75
        public static string urlHost_DB;
76
        public static string urlPort_DB;
77
        public static string Custom_ViewInfoId;
78
        public static bool ParameterMode = false;
79
        public static bool isExternal = false;
80

  
81
        /// <summary>
82
        /// logger
83
        /// </summary>
84
        public static ILog DBLogger = null;
85
        public static ILog FileLogger = null;
86

  
87
        /// <summary>
88
        /// Application Data Folder
89
        /// </summary>
90
        public static string AppDataFolder
91
        {
92
            get
93
            {
94
                return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), "MARKUS");
95
            }
96
        }
97

  
98

  
99
        public static RestSharp.RestClient BaseClient { get; set; }
100
        public static IKCOM.KCOM_SystemInfo SystemInfo { get; set; }
101

  
102

  
103
        private static OpenProperties ParamDecoding(string DecodingText, System.Text.Encoding oEncoding = null)
104
        {
105
            if (oEncoding == null)
106
                oEncoding = System.Text.Encoding.UTF8;
107

  
108
            byte[] byteArray = Convert.FromBase64String(DecodingText);
109

  
110
            string jsonBack = oEncoding.GetString(byteArray);
111

  
112
            return Newtonsoft.Json.JsonConvert.DeserializeObject<OpenProperties>(jsonBack);
113
        }
114

  
115
        private string versionPath = null;
116
        //public SplashScreen splash = new SplashScreen("splash.png");
117
        public static SplashScreenWindow splashScreen = new SplashScreenWindow();
118

  
119
        public App()
120
        {
121
            Telerik.Windows.Controls.StyleManager.ApplicationTheme = new Telerik.Windows.Controls.VisualStudio2013Theme();
122
        }
123

  
124
        protected override async void OnStartup(StartupEventArgs e)
125
        {
126

  
127
            try
128
            {
129

  
130

  
131
                splashScreen.Show();
132

  
133
                /// create log database and table
134
                using (IAbstractDatabase database = new AppSQLiteDatabase() { FilePath = Path.Combine(AppDataFolder, "log4net.db") })
135
                {
136
                    string sSql = "CREATE TABLE IF NOT EXISTS Log (LogId INTEGER PRIMARY KEY,Date DATETIME NOT NULL,Level VARCHAR(50) NOT NULL,Logger VARCHAR(255) NOT NULL,Message TEXT DEFAULT NULL,StackTrace TEXT DEFAULT NULL);";
137
                    database.ExecuteNonQuery(sSql);
138
                }
139
                /// up to here
140
                AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
141
                log4net.GlobalContext.Properties["LogDBFilePath"] = Path.Combine(AppDataFolder, "log4net.db");
142
                log4net.GlobalContext.Properties["LogFilePath"] = Path.Combine(AppDataFolder, "Log", "log4net.log");
143
                App.DBLogger = LogManager.GetLogger("DBLogger");
144
                App.FileLogger = LogManager.GetLogger("EventLogger");
145

  
146
                #region  //  DNS 체크
147

  
148
                string localdomain = CommonLib.Common.GetConfigString("HOST_DOMAIN", "DOMAIN", "");
149

  
150
                var hostEntry = CommonLib.DNSHelper.GetHostEntryTask();
151

  
152
                if (hostEntry == null)
153
                {
154
                    System.Diagnostics.Debug.WriteLine("(hostEntry == null");
155
                    App.FileLogger.Fatal("hostEntry == null");
156
                    isExternal = true;
157
                }
158
                else if (!hostEntry.HostName.EndsWith(localdomain))
159
                {
160
                    // 외부 사용자
161
                    App.FileLogger.Fatal("hostEntry != localdomain :" + hostEntry.HostName);
162
                    isExternal = true;
163
                }
164
                #endregion
165
                //splash.Show(false, false);                
166

  
167
                if (e.Args.Count() > 0)
168
                {
169
                    var result = ParamDecoding(e.Args[0].Replace(@"kcom://", "").Replace(@"/", ""));
170
                    App.ViewInfo = new IKCOM.ViewInfo
171
                    {
172
                        DocumentItemID = result.DocumentItemID,
173
                        EnsembleID = result.DocumentItemID,
174
                        //DocumentItemID = "10001",
175
                        bPartner = result.bPartner,
176
                        CreateFinalPDFPermission = result.CreateFinalPDFPermission,
177
                        NewCommentPermission = result.NewCommentPermission,
178
                        ProjectNO = result.ProjectNO,
179
                        UserID = result.UserID,
180
                        //UserID = "H2009115",
181
                        //Mode = 0 , 1 , 2
182
                    };
183

  
184
                    App.PEMSSInfo = new IKCOM.PEMSSInfo
185
                    {
186
                        UserID = result.uId,
187
                        CommentID = result.cId
188
                    };
189

  
190
                    ParameterMode = true;
191
                }
192
                else
193
                {
194
                    string[] strArg = Environment.GetCommandLineArgs();
195
                    if (strArg.Length > 1)
196
                    {
197
                        //label1.Text = strArg[1];
198

  
199
                        var result = ParamDecoding(strArg[1].Replace(@"kcom://", "").Replace(@"/", ""));
200
                        App.ViewInfo = new IKCOM.ViewInfo
201
                        {
202
                            DocumentItemID = result.DocumentItemID,
203
                            EnsembleID = result.DocumentItemID,
204
                            //DocumentItemID = "10001",
205
                            bPartner = result.bPartner,
206
                            CreateFinalPDFPermission = result.CreateFinalPDFPermission,
207
                            NewCommentPermission = result.NewCommentPermission,
208
                            ProjectNO = result.ProjectNO,
209
                            UserID = result.UserID,
210
                            //UserID = "H2009115",
211
                            //Mode = 0 , 1 , 2
212
                        };
213

  
214
                        App.PEMSSInfo = new IKCOM.PEMSSInfo
215
                        {
216
                            UserID = result.uId
217
                        };
218

  
219
                        ParameterMode = true;
220
                    }
221
                }
222

  
223
                //App.ViewInfo.CreateFinalPDFPermission = false;
224
                //App.ViewInfo.NewCommentPermission = false;
225
                //GetQueryStringParameters();
226
                _binding = new BasicHttpBinding(BasicHttpSecurityMode.TransportCredentialOnly);
227
                _binding.MaxBufferSize = 2147483647;
228
                _binding.MaxReceivedMessageSize = 2147483647;
229
                _binding.OpenTimeout = new TimeSpan(0, 1, 0);
230
                _binding.ReceiveTimeout = new TimeSpan(0, 10, 0);
231
                _binding.CloseTimeout = new TimeSpan(0, 5, 0);
232
                _binding.SendTimeout = new TimeSpan(0, 5, 0);
233
                _binding.TextEncoding = System.Text.Encoding.UTF8;
234
                _binding.TransferMode = TransferMode.Buffered;
235
                //Support.SetLicense();
236

  
237
                string sBaseServiceURL = string.Empty;//CommonLib.Common.GetConfigString("BaseClientAddress", "URL", "");
238

  
239
#if DEBUG
240
                //sBaseServiceURL = CommonLib.Common.GetConfigString("BaseClientAddress", "URL", "", isExternal);
241
                System.Diagnostics.Debug.WriteLine("sBaseServiceURL");
242
                sBaseServiceURL = CommonLib.Common.GetConfigString("Debug_BaseClientAddress", "URL", "", isExternal);
243
#else
244
                sBaseServiceURL = CommonLib.Common.GetConfigString("BaseClientAddress", "URL", "", isExternal);
245
#endif
246

  
247
                _EndPoint = new EndpointAddress(string.Format("{0}/ServiceDeepView.svc", sBaseServiceURL));
248

  
249
#if DEBUG
250
                _PemssEndPoint = new EndpointAddress(string.Format("{0}/PemssService.svc", "http://localhost:13009"));
251
#else
252
                          _PemssEndPoint = new EndpointAddress(string.Format("{0}/PemssService.svc", sBaseServiceURL));
253
#endif
254

  
255
                await SplashScreenAsnyc();
256
                base.OnStartup(e);
257

  
258
                //this.MainWindow = new MainWindow();
259

  
260
            }
261
            catch (Exception ex)
262
            {
263
                MessageBox.Show("Err:" + ex.ToString());
264
            }
265
            finally
266
            {
267
                await SplashScreenAsnyc();
268
            }
269
        }
270

  
271
        private async Task<bool> SplashScreenAsnyc()
272
        {
273
            int value = 100 / ISplashMessage.SplashMessageCnt;
274

  
275
            for (int i = 1; i < ISplashMessage.SplashMessageCnt; i++)
276
            {
277
                System.Threading.Thread.Sleep(3);
278
                await splashScreen.Dispatcher.InvokeAsync(() => splashScreen.Progress = i * value);
279
            }
280

  
281
            splashScreen.Close();
282

  
283
            return true;
284
        }
285

  
286
        public static void splashString(string text)
287
        {
288
            Task.Factory.StartNew(() =>
289
            {
290
                splashScreen.Dispatcher.Invoke(() => splashScreen.SplashText = text);
... 이 차이점은 표시할 수 있는 최대 줄수를 초과해서 이 차이점은 잘렸습니다.

내보내기 Unified diff