zoulei 1 jaar geleden
bovenliggende
commit
db1e0e0c0c

+ 259 - 0
Layout/CtrlTx_layoutControl1.xml

@@ -0,0 +1,259 @@
+<XtraSerializer version="1.0" application="LayoutControl">
+  <property name="#LayoutVersion" />
+  <property name="OptionsFocus" isnull="true" iskey="true">
+    <property name="ActivateSelectedControlOnGotFocus">true</property>
+    <property name="AllowFocusControlOnLabelClick">true</property>
+    <property name="EnableAutoTabOrder">true</property>
+    <property name="AllowFocusControlOnActivatedTabPage">false</property>
+    <property name="AllowFocusGroups">false</property>
+    <property name="AllowFocusTabbedGroups">false</property>
+    <property name="AllowFocusReadonlyEditors">true</property>
+    <property name="MoveFocusRightToLeft">false</property>
+    <property name="MoveFocusDirection">AcrossThenDown</property>
+  </property>
+  <property name="LookAndFeel" isnull="true" iskey="true">
+    <property name="SkinName">Basic</property>
+    <property name="Style">Skin</property>
+    <property name="UseDefaultLookAndFeel">true</property>
+    <property name="UseWindowsXPTheme">false</property>
+  </property>
+  <property name="Items" iskey="true" value="4">
+    <property name="Item1" isnull="true" iskey="true">
+      <property name="TypeName">LayoutGroup</property>
+      <property name="TabbedGroupParentName" />
+      <property name="GroupBordersVisible">true</property>
+      <property name="AllowDrawBackground">true</property>
+      <property name="EnableIndentsWithoutBorders">Default</property>
+      <property name="OptionsItemText" isnull="true" iskey="true">
+        <property name="TextToControlDistance">4</property>
+        <property name="TextAlignMode">UseParentOptions</property>
+      </property>
+      <property name="CaptionImageVisible">true</property>
+      <property name="FlowDirection">LeftToRight</property>
+      <property name="LayoutMode">Regular</property>
+      <property name="CaptionImageLocation">Default</property>
+      <property name="CaptionImageIndex">-1</property>
+      <property name="AllowBorderColorBlending">false</property>
+      <property name="ExpandOnDoubleClick">false</property>
+      <property name="Expanded">true</property>
+      <property name="DefaultLayoutType">Vertical</property>
+      <property name="ShowTabPageCloseButton">false</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsTableLayoutGroup" isnull="true" iskey="true">
+        <property name="RowDefinitions" iskey="true" value="0" />
+        <property name="ColumnDefinitions" iskey="true" value="0" />
+      </property>
+      <property name="Size">@3,Width=424@3,Height=254</property>
+      <property name="ExpandButtonVisible">false</property>
+      <property name="ExpandButtonMode">Normal</property>
+      <property name="HeaderButtonsLocation">Default</property>
+      <property name="GroupStyle">Inherited</property>
+      <property name="TextLocation">Top</property>
+      <property name="TabPageWidth">0</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">Root</property>
+      <property name="ParentName" />
+      <property name="TextVisible">true</property>
+      <property name="Location">@1,X=0@1,Y=0</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">参考站信息</property>
+      <property name="CustomizationFormText">参考站信息</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+    </property>
+    <property name="Item2" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtRefName</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=46</property>
+      <property name="MinSize">@2,Width=77@2,Height=46</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem8</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=70@2,Height=20</property>
+      <property name="Location">@1,X=0@1,Y=0</property>
+      <property name="Size">@3,Width=404@2,Height=46</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">参考站名称</property>
+      <property name="CustomizationFormText">参考站名称</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+    <property name="Item3" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtRefLon</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=54</property>
+      <property name="MinSize">@2,Width=76@2,Height=54</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem15</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=70@2,Height=20</property>
+      <property name="Location">@1,X=0@2,Y=46</property>
+      <property name="Size">@3,Width=404@2,Height=54</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">位置经度</property>
+      <property name="CustomizationFormText">位置经度</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+    <property name="Item4" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtRefLat</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=54</property>
+      <property name="MinSize">@2,Width=76@2,Height=54</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem16</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=70@2,Height=20</property>
+      <property name="Location">@1,X=0@3,Y=100</property>
+      <property name="Size">@3,Width=404@3,Height=114</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">位置纬度</property>
+      <property name="CustomizationFormText">位置纬度</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+  </property>
+</XtraSerializer>

+ 259 - 0
Layout/CtrlTx_layoutControl2.xml

@@ -0,0 +1,259 @@
+<XtraSerializer version="1.0" application="LayoutControl">
+  <property name="#LayoutVersion" />
+  <property name="OptionsFocus" isnull="true" iskey="true">
+    <property name="ActivateSelectedControlOnGotFocus">true</property>
+    <property name="AllowFocusControlOnLabelClick">true</property>
+    <property name="EnableAutoTabOrder">true</property>
+    <property name="AllowFocusControlOnActivatedTabPage">false</property>
+    <property name="AllowFocusGroups">false</property>
+    <property name="AllowFocusTabbedGroups">false</property>
+    <property name="AllowFocusReadonlyEditors">true</property>
+    <property name="MoveFocusRightToLeft">false</property>
+    <property name="MoveFocusDirection">AcrossThenDown</property>
+  </property>
+  <property name="LookAndFeel" isnull="true" iskey="true">
+    <property name="SkinName">Basic</property>
+    <property name="Style">Skin</property>
+    <property name="UseDefaultLookAndFeel">true</property>
+    <property name="UseWindowsXPTheme">false</property>
+  </property>
+  <property name="Items" iskey="true" value="4">
+    <property name="Item1" isnull="true" iskey="true">
+      <property name="TypeName">LayoutGroup</property>
+      <property name="TabbedGroupParentName" />
+      <property name="GroupBordersVisible">true</property>
+      <property name="AllowDrawBackground">true</property>
+      <property name="EnableIndentsWithoutBorders">Default</property>
+      <property name="OptionsItemText" isnull="true" iskey="true">
+        <property name="TextToControlDistance">4</property>
+        <property name="TextAlignMode">UseParentOptions</property>
+      </property>
+      <property name="CaptionImageVisible">true</property>
+      <property name="FlowDirection">LeftToRight</property>
+      <property name="LayoutMode">Regular</property>
+      <property name="CaptionImageLocation">Default</property>
+      <property name="CaptionImageIndex">-1</property>
+      <property name="AllowBorderColorBlending">false</property>
+      <property name="ExpandOnDoubleClick">false</property>
+      <property name="Expanded">true</property>
+      <property name="DefaultLayoutType">Vertical</property>
+      <property name="ShowTabPageCloseButton">false</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsTableLayoutGroup" isnull="true" iskey="true">
+        <property name="RowDefinitions" iskey="true" value="0" />
+        <property name="ColumnDefinitions" iskey="true" value="0" />
+      </property>
+      <property name="Size">@3,Width=424@3,Height=254</property>
+      <property name="ExpandButtonVisible">false</property>
+      <property name="ExpandButtonMode">Normal</property>
+      <property name="HeaderButtonsLocation">Default</property>
+      <property name="GroupStyle">Inherited</property>
+      <property name="TextLocation">Top</property>
+      <property name="TabPageWidth">0</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">Root</property>
+      <property name="ParentName" />
+      <property name="TextVisible">true</property>
+      <property name="Location">@1,X=0@1,Y=0</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">接收站信息</property>
+      <property name="CustomizationFormText">接收站信息</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+    </property>
+    <property name="Item2" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtMainTxName</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=46</property>
+      <property name="MinSize">@2,Width=77@2,Height=46</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem8</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=56@2,Height=20</property>
+      <property name="Location">@1,X=0@1,Y=0</property>
+      <property name="Size">@3,Width=404@2,Height=46</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">天线名称</property>
+      <property name="CustomizationFormText">天线名称</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+    <property name="Item3" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtMainTxLon</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=54</property>
+      <property name="MinSize">@2,Width=76@2,Height=54</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem15</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=56@2,Height=20</property>
+      <property name="Location">@1,X=0@2,Y=46</property>
+      <property name="Size">@3,Width=404@2,Height=54</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">天线经度</property>
+      <property name="CustomizationFormText">天线经度</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+    <property name="Item4" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtMainTxLat</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=54</property>
+      <property name="MinSize">@2,Width=76@2,Height=54</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem16</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=56@2,Height=20</property>
+      <property name="Location">@1,X=0@3,Y=100</property>
+      <property name="Size">@3,Width=404@3,Height=114</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">天线纬度</property>
+      <property name="CustomizationFormText">天线纬度</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+  </property>
+</XtraSerializer>

+ 259 - 0
Layout/CtrlTx_layoutControl3.xml

@@ -0,0 +1,259 @@
+<XtraSerializer version="1.0" application="LayoutControl">
+  <property name="#LayoutVersion" />
+  <property name="OptionsFocus" isnull="true" iskey="true">
+    <property name="ActivateSelectedControlOnGotFocus">true</property>
+    <property name="AllowFocusControlOnLabelClick">true</property>
+    <property name="EnableAutoTabOrder">true</property>
+    <property name="AllowFocusControlOnActivatedTabPage">false</property>
+    <property name="AllowFocusGroups">false</property>
+    <property name="AllowFocusTabbedGroups">false</property>
+    <property name="AllowFocusReadonlyEditors">true</property>
+    <property name="MoveFocusRightToLeft">false</property>
+    <property name="MoveFocusDirection">AcrossThenDown</property>
+  </property>
+  <property name="LookAndFeel" isnull="true" iskey="true">
+    <property name="SkinName">Basic</property>
+    <property name="Style">Skin</property>
+    <property name="UseDefaultLookAndFeel">true</property>
+    <property name="UseWindowsXPTheme">false</property>
+  </property>
+  <property name="Items" iskey="true" value="4">
+    <property name="Item1" isnull="true" iskey="true">
+      <property name="TypeName">LayoutGroup</property>
+      <property name="TabbedGroupParentName" />
+      <property name="GroupBordersVisible">true</property>
+      <property name="AllowDrawBackground">true</property>
+      <property name="EnableIndentsWithoutBorders">Default</property>
+      <property name="OptionsItemText" isnull="true" iskey="true">
+        <property name="TextToControlDistance">4</property>
+        <property name="TextAlignMode">UseParentOptions</property>
+      </property>
+      <property name="CaptionImageVisible">true</property>
+      <property name="FlowDirection">LeftToRight</property>
+      <property name="LayoutMode">Regular</property>
+      <property name="CaptionImageLocation">Default</property>
+      <property name="CaptionImageIndex">-1</property>
+      <property name="AllowBorderColorBlending">false</property>
+      <property name="ExpandOnDoubleClick">false</property>
+      <property name="Expanded">true</property>
+      <property name="DefaultLayoutType">Vertical</property>
+      <property name="ShowTabPageCloseButton">false</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsTableLayoutGroup" isnull="true" iskey="true">
+        <property name="RowDefinitions" iskey="true" value="0" />
+        <property name="ColumnDefinitions" iskey="true" value="0" />
+      </property>
+      <property name="Size">@3,Width=424@3,Height=254</property>
+      <property name="ExpandButtonVisible">false</property>
+      <property name="ExpandButtonMode">Normal</property>
+      <property name="HeaderButtonsLocation">Default</property>
+      <property name="GroupStyle">Inherited</property>
+      <property name="TextLocation">Top</property>
+      <property name="TabPageWidth">0</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">Root</property>
+      <property name="ParentName" />
+      <property name="TextVisible">true</property>
+      <property name="Location">@1,X=0@1,Y=0</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">超短站信息</property>
+      <property name="CustomizationFormText">超短站信息</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+    </property>
+    <property name="Item2" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtCdbName</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=46</property>
+      <property name="MinSize">@2,Width=77@2,Height=46</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem8</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=56@2,Height=20</property>
+      <property name="Location">@1,X=0@1,Y=0</property>
+      <property name="Size">@3,Width=404@2,Height=46</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">站点名称</property>
+      <property name="CustomizationFormText">站点名称</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+    <property name="Item3" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtCdbLon</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=54</property>
+      <property name="MinSize">@2,Width=76@2,Height=54</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem15</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=56@2,Height=20</property>
+      <property name="Location">@1,X=0@2,Y=46</property>
+      <property name="Size">@3,Width=404@2,Height=54</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">位置经度</property>
+      <property name="CustomizationFormText">位置经度</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+    <property name="Item4" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtCdbLat</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=54</property>
+      <property name="MinSize">@2,Width=76@2,Height=54</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem16</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=56@2,Height=20</property>
+      <property name="Location">@1,X=0@3,Y=100</property>
+      <property name="Size">@3,Width=404@3,Height=114</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">位置纬度</property>
+      <property name="CustomizationFormText">位置纬度</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+  </property>
+</XtraSerializer>

+ 259 - 0
Layout/CtrlTx_layoutControl4.xml

@@ -0,0 +1,259 @@
+<XtraSerializer version="1.0" application="LayoutControl">
+  <property name="#LayoutVersion" />
+  <property name="OptionsFocus" isnull="true" iskey="true">
+    <property name="ActivateSelectedControlOnGotFocus">true</property>
+    <property name="AllowFocusControlOnLabelClick">true</property>
+    <property name="EnableAutoTabOrder">true</property>
+    <property name="AllowFocusControlOnActivatedTabPage">false</property>
+    <property name="AllowFocusGroups">false</property>
+    <property name="AllowFocusTabbedGroups">false</property>
+    <property name="AllowFocusReadonlyEditors">true</property>
+    <property name="MoveFocusRightToLeft">false</property>
+    <property name="MoveFocusDirection">AcrossThenDown</property>
+  </property>
+  <property name="LookAndFeel" isnull="true" iskey="true">
+    <property name="SkinName">Basic</property>
+    <property name="Style">Skin</property>
+    <property name="UseDefaultLookAndFeel">true</property>
+    <property name="UseWindowsXPTheme">false</property>
+  </property>
+  <property name="Items" iskey="true" value="4">
+    <property name="Item1" isnull="true" iskey="true">
+      <property name="TypeName">LayoutGroup</property>
+      <property name="TabbedGroupParentName" />
+      <property name="GroupBordersVisible">true</property>
+      <property name="AllowDrawBackground">true</property>
+      <property name="EnableIndentsWithoutBorders">Default</property>
+      <property name="OptionsItemText" isnull="true" iskey="true">
+        <property name="TextToControlDistance">4</property>
+        <property name="TextAlignMode">UseParentOptions</property>
+      </property>
+      <property name="CaptionImageVisible">true</property>
+      <property name="FlowDirection">LeftToRight</property>
+      <property name="LayoutMode">Regular</property>
+      <property name="CaptionImageLocation">Default</property>
+      <property name="CaptionImageIndex">-1</property>
+      <property name="AllowBorderColorBlending">false</property>
+      <property name="ExpandOnDoubleClick">false</property>
+      <property name="Expanded">true</property>
+      <property name="DefaultLayoutType">Vertical</property>
+      <property name="ShowTabPageCloseButton">false</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsTableLayoutGroup" isnull="true" iskey="true">
+        <property name="RowDefinitions" iskey="true" value="0" />
+        <property name="ColumnDefinitions" iskey="true" value="0" />
+      </property>
+      <property name="Size">@3,Width=424@3,Height=254</property>
+      <property name="ExpandButtonVisible">false</property>
+      <property name="ExpandButtonMode">Normal</property>
+      <property name="HeaderButtonsLocation">Default</property>
+      <property name="GroupStyle">Inherited</property>
+      <property name="TextLocation">Top</property>
+      <property name="TabPageWidth">0</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">Root</property>
+      <property name="ParentName" />
+      <property name="TextVisible">true</property>
+      <property name="Location">@1,X=0@1,Y=0</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">测向站信息</property>
+      <property name="CustomizationFormText">测向站信息</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+    </property>
+    <property name="Item2" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtCxName</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=46</property>
+      <property name="MinSize">@2,Width=77@2,Height=46</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem8</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=56@2,Height=20</property>
+      <property name="Location">@1,X=0@1,Y=0</property>
+      <property name="Size">@3,Width=404@2,Height=46</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">站点名称</property>
+      <property name="CustomizationFormText">站点名称</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+    <property name="Item3" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtCxLon</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=54</property>
+      <property name="MinSize">@2,Width=76@2,Height=54</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem15</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=56@2,Height=20</property>
+      <property name="Location">@1,X=0@2,Y=46</property>
+      <property name="Size">@3,Width=404@2,Height=54</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">位置经度</property>
+      <property name="CustomizationFormText">位置经度</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+    <property name="Item4" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">txtCxLat</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=54</property>
+      <property name="MinSize">@2,Width=76@2,Height=54</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem16</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=56@2,Height=20</property>
+      <property name="Location">@1,X=0@3,Y=100</property>
+      <property name="Size">@3,Width=404@3,Height=114</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">位置纬度</property>
+      <property name="CustomizationFormText">位置纬度</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Top</property>
+    </property>
+  </property>
+</XtraSerializer>

+ 259 - 0
Layout/CtrlXl_layoutControl1.xml

@@ -0,0 +1,259 @@
+<XtraSerializer version="1.0" application="LayoutControl">
+  <property name="#LayoutVersion" />
+  <property name="OptionsFocus" isnull="true" iskey="true">
+    <property name="ActivateSelectedControlOnGotFocus">true</property>
+    <property name="AllowFocusControlOnLabelClick">true</property>
+    <property name="EnableAutoTabOrder">true</property>
+    <property name="AllowFocusControlOnActivatedTabPage">false</property>
+    <property name="AllowFocusGroups">false</property>
+    <property name="AllowFocusTabbedGroups">false</property>
+    <property name="AllowFocusReadonlyEditors">true</property>
+    <property name="MoveFocusRightToLeft">false</property>
+    <property name="MoveFocusDirection">AcrossThenDown</property>
+  </property>
+  <property name="LookAndFeel" isnull="true" iskey="true">
+    <property name="SkinName">Basic</property>
+    <property name="Style">Skin</property>
+    <property name="UseDefaultLookAndFeel">true</property>
+    <property name="UseWindowsXPTheme">false</property>
+  </property>
+  <property name="Items" iskey="true" value="4">
+    <property name="Item1" isnull="true" iskey="true">
+      <property name="TypeName">LayoutGroup</property>
+      <property name="TabbedGroupParentName" />
+      <property name="GroupBordersVisible">false</property>
+      <property name="AllowDrawBackground">true</property>
+      <property name="EnableIndentsWithoutBorders">True</property>
+      <property name="OptionsItemText" isnull="true" iskey="true">
+        <property name="TextToControlDistance">4</property>
+        <property name="TextAlignMode">UseParentOptions</property>
+      </property>
+      <property name="CaptionImageVisible">true</property>
+      <property name="FlowDirection">LeftToRight</property>
+      <property name="LayoutMode">Regular</property>
+      <property name="CaptionImageLocation">Default</property>
+      <property name="CaptionImageIndex">-1</property>
+      <property name="AllowBorderColorBlending">false</property>
+      <property name="ExpandOnDoubleClick">false</property>
+      <property name="Expanded">true</property>
+      <property name="DefaultLayoutType">Vertical</property>
+      <property name="ShowTabPageCloseButton">false</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsTableLayoutGroup" isnull="true" iskey="true">
+        <property name="RowDefinitions" iskey="true" value="0" />
+        <property name="ColumnDefinitions" iskey="true" value="0" />
+      </property>
+      <property name="Size">@3,Width=647@3,Height=422</property>
+      <property name="ExpandButtonVisible">false</property>
+      <property name="ExpandButtonMode">Normal</property>
+      <property name="HeaderButtonsLocation">Default</property>
+      <property name="GroupStyle">Inherited</property>
+      <property name="TextLocation">Top</property>
+      <property name="TabPageWidth">0</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">Root</property>
+      <property name="ParentName" />
+      <property name="TextVisible">false</property>
+      <property name="Location">@1,X=0@1,Y=0</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">Root</property>
+      <property name="CustomizationFormText">Root</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+    </property>
+    <property name="Item2" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">btnOpen</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@2,Height=28</property>
+      <property name="MinSize">@3,Width=118@2,Height=28</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem1</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">true</property>
+      <property name="TextSize">@2,Width=59@2,Height=20</property>
+      <property name="Location">@1,X=0@1,Y=0</property>
+      <property name="Size">@3,Width=527@2,Height=38</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">星历文件:</property>
+      <property name="CustomizationFormText">星历文件:</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Default</property>
+    </property>
+    <property name="Item3" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">gridXl</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Default</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@1,Width=0@1,Height=0</property>
+      <property name="MinSize">@3,Width=100@2,Height=20</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem2</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">false</property>
+      <property name="TextSize">@1,Width=0@1,Height=0</property>
+      <property name="Location">@1,X=0@2,Y=38</property>
+      <property name="Size">@3,Width=627@3,Height=364</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">layoutControlItem2</property>
+      <property name="CustomizationFormText">layoutControlItem2</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Default</property>
+    </property>
+    <property name="Item4" isnull="true" iskey="true">
+      <property name="TypeName">LayoutControlItem</property>
+      <property name="ControlName">btnImp</property>
+      <property name="AllowHtmlStringInCaption">false</property>
+      <property name="TextAlignMode">UseParentOptions</property>
+      <property name="SizeConstraintsType">Custom</property>
+      <property name="Image" isnull="true" />
+      <property name="ImageIndex">-1</property>
+      <property name="ImageAlignment">MiddleLeft</property>
+      <property name="ImageToTextDistance">5</property>
+      <property name="SvgImage" isnull="true" />
+      <property name="SvgImageSize">@1,Width=0@1,Height=0</property>
+      <property name="MaxSize">@3,Width=100@2,Height=28</property>
+      <property name="MinSize">@3,Width=100@2,Height=28</property>
+      <property name="ControlAlignment">TopLeft</property>
+      <property name="ContentVisible">true</property>
+      <property name="HighlightFocusedItem">Default</property>
+      <property name="TrimClientAreaToControl">true</property>
+      <property name="ContentVertAlignment">Default</property>
+      <property name="ContentHorzAlignment">Default</property>
+      <property name="AllowGlyphSkinning">Default</property>
+      <property name="OptionsCustomization" isnull="true" iskey="true">
+        <property name="AllowDrag">Default</property>
+        <property name="AllowDrop">Default</property>
+      </property>
+      <property name="OptionsTableLayoutItem" isnull="true" iskey="true">
+        <property name="RowIndex">0</property>
+        <property name="RowSpan">1</property>
+        <property name="ColumnIndex">0</property>
+        <property name="ColumnSpan">1</property>
+      </property>
+      <property name="OptionsToolTip" isnull="true" iskey="true">
+        <property name="ToolTip" />
+        <property name="ToolTipTitle" />
+        <property name="ToolTipIconType">None</property>
+        <property name="ImmediateToolTip">false</property>
+        <property name="AllowHtmlString">Default</property>
+        <property name="IconToolTip" />
+        <property name="IconToolTipTitle" />
+        <property name="IconToolTipIconType">None</property>
+        <property name="EnableIconToolTip">true</property>
+        <property name="IconImmediateToolTip">false</property>
+        <property name="IconAllowHtmlString">Default</property>
+      </property>
+      <property name="Name">layoutControlItem3</property>
+      <property name="ParentName">Root</property>
+      <property name="TextVisible">false</property>
+      <property name="TextSize">@1,Width=0@1,Height=0</property>
+      <property name="Location">@3,X=527@1,Y=0</property>
+      <property name="Size">@3,Width=100@2,Height=38</property>
+      <property name="ShowInCustomizationForm">true</property>
+      <property name="Text">layoutControlItem3</property>
+      <property name="CustomizationFormText">layoutControlItem3</property>
+      <property name="StartNewLine">false</property>
+      <property name="Visibility">Always</property>
+      <property name="TextLocation">Default</property>
+    </property>
+  </property>
+</XtraSerializer>

+ 2 - 2
XdCxRhDW.App/CorTools/XlCalculateForm.cs

@@ -21,6 +21,7 @@ using System.Windows.Forms;
 using XdCxRhDw.Dto;
 using XdCxRhDW.Core;
 using XdCxRhDW.Core.Api;
+using XdCxRhDW.Repostory;
 using XdCxRhDW.Repostory.EFContext;
 using XdCxRhDW.Repostory.Model;
 
@@ -39,11 +40,10 @@ namespace XdCxRhDW.App.CorTools
             gridControl.Init<SatEphDto>().UseSort().UseFilter().UseMultiSelect().UseRowNumber();
             gridControl.DataSource = listEph;
             txtTle.UseDoubleClickToSelectAll();
-            var listXl =await XlCache.GetAllAsync();
             txtTle.UseDefault().SetStringData(listXl.Select(p=>p.TwoLine));
         }
 
-      
+
         private async void btnCalculate_Click(object sender, EventArgs e)
         {
 

+ 17 - 0
XdCxRhDW.App/Image/Edit.svg

@@ -0,0 +1,17 @@
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve">
+<style type="text/css">
+	.Black{fill:#727272;}
+	.Blue{fill:#1177D7;}
+	.Green{fill:#039C23;}
+	.Yellow{fill:#FFB115;}
+	.Red{fill:#D11C1C;}
+	.White{fill:#FFFFFF;}
+	.st0{opacity:0.5;}
+	.st1{opacity:0.75;}
+</style>
+<path class="Black" d="M24,24.8V28H4V4h20v7.2l2-2V3c0-0.5-0.5-1-1-1H3C2.5,2,2,2.5,2,3v26c0,0.5,0.5,1,1,1h22c0.5,0,1-0.5,1-1v-6.2
+	L24,24.8z"/>
+<path class="Blue" d="M29,17l-8,8l-4-4l8-8L29,17z M30,16l1.7-1.7c0.4-0.4,0.4-1,0-1.3L29,10.3c-0.4-0.4-1-0.4-1.3,0L26,12L30,16z
+	 M16,22v4h4L16,22z"/>
+</svg>

+ 1 - 25
XdCxRhDW.App/MainForm.Designer.cs

@@ -37,8 +37,6 @@
             this.btnOpenApi = new DevExpress.XtraBars.BarButtonItem();
             this.btnTask = new DevExpress.XtraBars.BarButtonItem();
             this.btnCg = new DevExpress.XtraBars.BarButtonItem();
-            this.btnCx = new DevExpress.XtraBars.BarButtonItem();
-            this.btnDw = new DevExpress.XtraBars.BarButtonItem();
             this.btnSet = new DevExpress.XtraBars.BarButtonItem();
             this.btnTx = new DevExpress.XtraBars.BarButtonItem();
             this.btnXl = new DevExpress.XtraBars.BarButtonItem();
@@ -72,8 +70,6 @@
             this.ribbon.ExpandCollapseItem,
             this.btnTask,
             this.btnCg,
-            this.btnCx,
-            this.btnDw,
             this.btnSet,
             this.btnTx,
             this.btnXl,
@@ -95,7 +91,7 @@
             this.ribbon.ShowPageHeadersMode = DevExpress.XtraBars.Ribbon.ShowPageHeadersMode.Show;
             this.ribbon.ShowQatLocationSelector = false;
             this.ribbon.ShowToolbarCustomizeItem = false;
-            this.ribbon.Size = new System.Drawing.Size(1347, 133);
+            this.ribbon.Size = new System.Drawing.Size(1347, 126);
             this.ribbon.Toolbar.ShowCustomizeItem = false;
             // 
             // skinPaletteDropDownButtonItem1
@@ -131,22 +127,6 @@
             this.btnCg.Name = "btnCg";
             this.btnCg.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.btn_ItemClick);
             // 
-            // btnCx
-            // 
-            this.btnCx.Caption = "测向结果";
-            this.btnCx.Id = 3;
-            this.btnCx.ImageOptions.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("btnCx.ImageOptions.SvgImage")));
-            this.btnCx.Name = "btnCx";
-            this.btnCx.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.btn_ItemClick);
-            // 
-            // btnDw
-            // 
-            this.btnDw.Caption = "定位结果";
-            this.btnDw.Id = 4;
-            this.btnDw.ImageOptions.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("btnDw.ImageOptions.SvgImage")));
-            this.btnDw.Name = "btnDw";
-            this.btnDw.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.btn_ItemClick);
-            // 
             // btnSet
             // 
             this.btnSet.Caption = "系统设置";
@@ -218,8 +198,6 @@
             // 
             this.ribbonPageGroup1.ItemLinks.Add(this.btnTask);
             this.ribbonPageGroup1.ItemLinks.Add(this.btnCg, true);
-            this.ribbonPageGroup1.ItemLinks.Add(this.btnCx);
-            this.ribbonPageGroup1.ItemLinks.Add(this.btnDw);
             this.ribbonPageGroup1.Name = "ribbonPageGroup1";
             this.ribbonPageGroup1.Text = "主功能区";
             // 
@@ -302,8 +280,6 @@
         private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup1;
         private DevExpress.XtraBars.BarButtonItem btnTask;
         private DevExpress.XtraBars.BarButtonItem btnCg;
-        private DevExpress.XtraBars.BarButtonItem btnCx;
-        private DevExpress.XtraBars.BarButtonItem btnDw;
         private DevExpress.XtraBars.BarButtonItem btnSet;
         private DevExpress.XtraBars.BarButtonItem btnTarget;
         private DevExpress.XtraBars.Docking2010.DocumentManager documentManager1;

+ 0 - 46
XdCxRhDW.App/MainForm.resx

@@ -307,52 +307,6 @@
         MTYsOC0xNiw4djRjMCwwLDEwLTEsMTYtNmM4LjEtNi44LDExLTcuOSwxNS45LThDMzEuMSw4LDI1LjMs
         OC43LDE2LDE4Yy04LDgtMTYsOC0xNiw4djQgIGMwLDAsMTAtMSwxNi02YzguMi02LjgsMTEtNy45LDE2
         LThWOFYyQzMyLDIsMjUsMSwxNiwxMHoiIGNsYXNzPSJzdDIiIC8+DQo8L3N2Zz4L
-</value>
-  </data>
-  <data name="btnCx.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi4z
-        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
-        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAFsEAAAC77u/
-        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
-        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
-        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
-        Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
-        MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5Z
-        ZWxsb3d7ZmlsbDojRkZCMTE1O30KCS5SZWR7ZmlsbDojRDExQzFDO30KCS5HcmVlbntmaWxsOiMwMzlD
-        MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
-        Y2l0eTowLjU7fQoJLnN0MXtvcGFjaXR5OjAuNzU7fQoJLnN0MntkaXNwbGF5Om5vbmU7fQoJLnN0M3tk
-        aXNwbGF5OmlubGluZTtmaWxsOiNGRkIxMTU7fQoJLnN0NHtkaXNwbGF5OmlubGluZTt9Cgkuc3Q1e2Rp
-        c3BsYXk6aW5saW5lO29wYWNpdHk6MC43NTt9Cgkuc3Q2e2Rpc3BsYXk6aW5saW5lO29wYWNpdHk6MC41
-        O30KCS5zdDd7ZGlzcGxheTppbmxpbmU7ZmlsbDojMDM5QzIzO30KCS5zdDh7ZGlzcGxheTppbmxpbmU7
-        ZmlsbDojRDExQzFDO30KCS5zdDl7ZGlzcGxheTppbmxpbmU7ZmlsbDojMTE3N0Q3O30KCS5zdDEwe2Rp
-        c3BsYXk6aW5saW5lO2ZpbGw6I0ZGRkZGRjt9Cjwvc3R5bGU+DQogIDxnIGlkPSJTdGF0ZU1hY2hpbmUi
-        Pg0KICAgIDxwYXRoIGQ9Ik0xNiw2aC0yTDQsMjJsMiwyaDE4bDItMkwxNiw2eiBNMjMuMiwyMkg2Ljhs
-        LTAuMy0wLjNMMTUsOC4ybDguNSwxMy41TDIzLjIsMjJ6IiBjbGFzcz0iQmxhY2siIC8+DQogICAgPHBh
-        dGggZD0iTTUsMjhjLTIuOCwwLTUtMi4yLTUtNXMyLjItNSw1LTVzNSwyLjIsNSw1UzcuOCwyOCw1LDI4
-        eiBNMzAsMjNjMC0yLjgtMi4yLTUtNS01cy01LDIuMi01LDVzMi4yLDUsNSw1ICAgUzMwLDI1LjgsMzAs
-        MjN6IE0yMCw3YzAtMi44LTIuMi01LTUtNXMtNSwyLjItNSw1czIuMiw1LDUsNVMyMCw5LjgsMjAsN3oi
-        IGNsYXNzPSJCbHVlIiAvPg0KICA8L2c+DQo8L3N2Zz4L
-</value>
-  </data>
-  <data name="btnDw.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi4z
-        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
-        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAPgCAAAC77u/
-        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
-        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
-        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
-        Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
-        MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ
-        LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD
-        MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
-        Y2l0eTowLjU7fQoJLnN0MXtkaXNwbGF5Om5vbmU7fQoJLnN0MntkaXNwbGF5OmlubGluZTtmaWxsOiMw
-        MzlDMjM7fQoJLnN0M3tkaXNwbGF5OmlubGluZTtmaWxsOiNEMTFDMUM7fQoJLnN0NHtkaXNwbGF5Omlu
-        bGluZTtmaWxsOiM3MjcyNzI7fQo8L3N0eWxlPg0KICA8ZyBpZD0iTWFwSXQiPg0KICAgIDxwYXRoIGQ9
-        Ik0xNiwyQzEwLjUsMiw2LDYuNSw2LDEyczEwLDE4LDEwLDE4czEwLTEyLjUsMTAtMThTMjEuNSwyLDE2
-        LDJ6IE0xNiwxNmMtMi4yLDAtNC0xLjgtNC00czEuOC00LDQtNHM0LDEuOCw0LDQgICBTMTguMiwxNiwx
-        NiwxNnoiIGNsYXNzPSJSZWQiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
 </value>
   </data>
   <data name="btnSet.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">

+ 44 - 56
XdCxRhDW.App/UserControl/CtrlHome.Designer.cs

@@ -36,15 +36,15 @@ namespace XdCxRhDW.App.UserControl
         {
             this.components = new System.ComponentModel.Container();
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(CtrlHome));
-            DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions buttonImageOptions4 = new DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions();
-            DevExpress.Utils.SuperToolTip superToolTip4 = new DevExpress.Utils.SuperToolTip();
-            DevExpress.Utils.ToolTipItem toolTipItem4 = new DevExpress.Utils.ToolTipItem();
-            DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions buttonImageOptions5 = new DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions();
-            DevExpress.Utils.SuperToolTip superToolTip5 = new DevExpress.Utils.SuperToolTip();
-            DevExpress.Utils.ToolTipItem toolTipItem5 = new DevExpress.Utils.ToolTipItem();
-            DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions buttonImageOptions6 = new DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions();
-            DevExpress.Utils.SuperToolTip superToolTip6 = new DevExpress.Utils.SuperToolTip();
-            DevExpress.Utils.ToolTipItem toolTipItem6 = new DevExpress.Utils.ToolTipItem();
+            DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions buttonImageOptions7 = new DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions();
+            DevExpress.Utils.SuperToolTip superToolTip7 = new DevExpress.Utils.SuperToolTip();
+            DevExpress.Utils.ToolTipItem toolTipItem7 = new DevExpress.Utils.ToolTipItem();
+            DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions buttonImageOptions8 = new DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions();
+            DevExpress.Utils.SuperToolTip superToolTip8 = new DevExpress.Utils.SuperToolTip();
+            DevExpress.Utils.ToolTipItem toolTipItem8 = new DevExpress.Utils.ToolTipItem();
+            DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions buttonImageOptions9 = new DevExpress.XtraEditors.ButtonsPanelControl.ButtonImageOptions();
+            DevExpress.Utils.SuperToolTip superToolTip9 = new DevExpress.Utils.SuperToolTip();
+            DevExpress.Utils.ToolTipItem toolTipItem9 = new DevExpress.Utils.ToolTipItem();
             this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl();
             this.txtTimeCho = new DevExpress.XtraEditors.ImageComboBoxEdit();
             this.barManager1 = new DevExpress.XtraBars.BarManager(this.components);
@@ -54,7 +54,6 @@ namespace XdCxRhDW.App.UserControl
             this.barDockControlRight = new DevExpress.XtraBars.BarDockControl();
             this.btnStart = new DevExpress.XtraBars.BarButtonItem();
             this.btnStop = new DevExpress.XtraBars.BarButtonItem();
-            this.btnTar = new DevExpress.XtraBars.BarButtonItem();
             this.btnDrawDto = new DevExpress.XtraBars.BarButtonItem();
             this.btnDrawDfo = new DevExpress.XtraBars.BarButtonItem();
             this.btnDrawCX = new DevExpress.XtraBars.BarButtonItem();
@@ -144,7 +143,7 @@ namespace XdCxRhDW.App.UserControl
             // txtTimeCho
             // 
             this.txtTimeCho.EditValue = 1;
-            this.txtTimeCho.Location = new System.Drawing.Point(247, 213);
+            this.txtTimeCho.Location = new System.Drawing.Point(245, 212);
             this.txtTimeCho.MenuManager = this.barManager1;
             this.txtTimeCho.Name = "txtTimeCho";
             this.txtTimeCho.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
@@ -156,7 +155,7 @@ namespace XdCxRhDW.App.UserControl
             new DevExpress.XtraEditors.Controls.ImageComboBoxItem("最近1天", 24, -1),
             new DevExpress.XtraEditors.Controls.ImageComboBoxItem("最近3天", 72, -1),
             new DevExpress.XtraEditors.Controls.ImageComboBoxItem("自定义", 0, -1)});
-            this.txtTimeCho.Size = new System.Drawing.Size(99, 22);
+            this.txtTimeCho.Size = new System.Drawing.Size(99, 20);
             this.txtTimeCho.StyleController = this.layoutControl1;
             this.txtTimeCho.TabIndex = 11;
             this.txtTimeCho.SelectedIndexChanged += new System.EventHandler(this.txtTimeCho_SelectedIndexChanged);
@@ -171,7 +170,6 @@ namespace XdCxRhDW.App.UserControl
             this.barManager1.Items.AddRange(new DevExpress.XtraBars.BarItem[] {
             this.btnStart,
             this.btnStop,
-            this.btnTar,
             this.btnDrawDto,
             this.btnDrawDfo,
             this.btnDrawCX,
@@ -232,14 +230,6 @@ namespace XdCxRhDW.App.UserControl
             this.btnStop.Name = "btnStop";
             this.btnStop.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.btn_ItemClick);
             // 
-            // btnTar
-            // 
-            this.btnTar.Caption = "编辑目标";
-            this.btnTar.Id = 3;
-            this.btnTar.ImageOptions.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("btnTar.ImageOptions.SvgImage")));
-            this.btnTar.Name = "btnTar";
-            this.btnTar.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.btnTar_ItemClick);
-            // 
             // btnDrawDto
             // 
             this.btnDrawDto.Caption = "绘制时差线";
@@ -274,7 +264,7 @@ namespace XdCxRhDW.App.UserControl
             // 
             // btnSearch
             // 
-            this.btnSearch.Location = new System.Drawing.Point(772, 213);
+            this.btnSearch.Location = new System.Drawing.Point(770, 212);
             this.btnSearch.Name = "btnSearch";
             this.btnSearch.Size = new System.Drawing.Size(84, 21);
             this.btnSearch.StyleController = this.layoutControl1;
@@ -285,44 +275,44 @@ namespace XdCxRhDW.App.UserControl
             // txtEndTime
             // 
             this.txtEndTime.EditValue = null;
-            this.txtEndTime.Location = new System.Drawing.Point(617, 213);
+            this.txtEndTime.Location = new System.Drawing.Point(615, 212);
             this.txtEndTime.MenuManager = this.barManager1;
             this.txtEndTime.Name = "txtEndTime";
             this.txtEndTime.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
             this.txtEndTime.Properties.CalendarTimeProperties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
-            this.txtEndTime.Size = new System.Drawing.Size(149, 22);
+            this.txtEndTime.Size = new System.Drawing.Size(149, 20);
             this.txtEndTime.StyleController = this.layoutControl1;
             this.txtEndTime.TabIndex = 8;
             // 
             // txtStartTime
             // 
             this.txtStartTime.EditValue = null;
-            this.txtStartTime.Location = new System.Drawing.Point(407, 213);
+            this.txtStartTime.Location = new System.Drawing.Point(405, 212);
             this.txtStartTime.MenuManager = this.barManager1;
             this.txtStartTime.Name = "txtStartTime";
             this.txtStartTime.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
             this.txtStartTime.Properties.CalendarTimeProperties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
             new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
-            this.txtStartTime.Size = new System.Drawing.Size(149, 22);
+            this.txtStartTime.Size = new System.Drawing.Size(149, 20);
             this.txtStartTime.StyleController = this.layoutControl1;
             this.txtStartTime.TabIndex = 7;
             // 
             // mapControl1
             // 
-            this.mapControl1.Location = new System.Drawing.Point(187, 2);
+            this.mapControl1.Location = new System.Drawing.Point(185, 2);
             this.mapControl1.Name = "mapControl1";
-            this.mapControl1.Size = new System.Drawing.Size(848, 170);
+            this.mapControl1.Size = new System.Drawing.Size(850, 170);
             this.mapControl1.TabIndex = 6;
             // 
             // gridHomePosRes
             // 
-            this.gridHomePosRes.Location = new System.Drawing.Point(188, 237);
+            this.gridHomePosRes.Location = new System.Drawing.Point(186, 236);
             this.gridHomePosRes.MainView = this.gridView2;
             this.gridHomePosRes.Name = "gridHomePosRes";
-            this.gridHomePosRes.Size = new System.Drawing.Size(846, 283);
+            this.gridHomePosRes.Size = new System.Drawing.Size(848, 284);
             this.gridHomePosRes.TabIndex = 5;
             this.gridHomePosRes.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
             this.gridView2});
@@ -383,30 +373,30 @@ namespace XdCxRhDW.App.UserControl
             // layoutControlItem3
             // 
             this.layoutControlItem3.Control = this.mapControl1;
-            this.layoutControlItem3.Location = new System.Drawing.Point(185, 0);
+            this.layoutControlItem3.Location = new System.Drawing.Point(183, 0);
             this.layoutControlItem3.Name = "layoutControlItem3";
-            this.layoutControlItem3.Size = new System.Drawing.Size(852, 174);
+            this.layoutControlItem3.Size = new System.Drawing.Size(854, 174);
             this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0);
             this.layoutControlItem3.TextVisible = false;
             // 
             // layoutControlGroup1
             // 
-            buttonImageOptions4.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("buttonImageOptions4.SvgImage")));
-            buttonImageOptions4.SvgImageSize = new System.Drawing.Size(20, 20);
-            toolTipItem4.Text = "新建任务";
-            superToolTip4.Items.Add(toolTipItem4);
-            buttonImageOptions5.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("buttonImageOptions5.SvgImage")));
-            buttonImageOptions5.SvgImageSize = new System.Drawing.Size(20, 20);
-            toolTipItem5.Text = "编辑任务";
-            superToolTip5.Items.Add(toolTipItem5);
-            buttonImageOptions6.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("buttonImageOptions6.SvgImage")));
-            buttonImageOptions6.SvgImageSize = new System.Drawing.Size(20, 20);
-            toolTipItem6.Text = "删除任务";
-            superToolTip6.Items.Add(toolTipItem6);
+            buttonImageOptions7.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("buttonImageOptions7.SvgImage")));
+            buttonImageOptions7.SvgImageSize = new System.Drawing.Size(20, 20);
+            toolTipItem7.Text = "新建任务";
+            superToolTip7.Items.Add(toolTipItem7);
+            buttonImageOptions8.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("buttonImageOptions8.SvgImage")));
+            buttonImageOptions8.SvgImageSize = new System.Drawing.Size(20, 20);
+            toolTipItem8.Text = "编辑任务";
+            superToolTip8.Items.Add(toolTipItem8);
+            buttonImageOptions9.SvgImage = ((DevExpress.Utils.Svg.SvgImage)(resources.GetObject("buttonImageOptions9.SvgImage")));
+            buttonImageOptions9.SvgImageSize = new System.Drawing.Size(20, 20);
+            toolTipItem9.Text = "删除任务";
+            superToolTip9.Items.Add(toolTipItem9);
             this.layoutControlGroup1.CustomHeaderButtons.AddRange(new DevExpress.XtraEditors.ButtonPanel.IBaseButton[] {
-            new DevExpress.XtraEditors.ButtonsPanelControl.GroupBoxButton("新建任务", false, buttonImageOptions4, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", -1, true, superToolTip4, true, false, true, null, -1),
-            new DevExpress.XtraEditors.ButtonsPanelControl.GroupBoxButton("编辑任务", false, buttonImageOptions5, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", -1, true, superToolTip5, true, false, true, null, -1),
-            new DevExpress.XtraEditors.ButtonsPanelControl.GroupBoxButton("删除任务", false, buttonImageOptions6, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", -1, true, superToolTip6, true, false, true, null, -1)});
+            new DevExpress.XtraEditors.ButtonsPanelControl.GroupBoxButton("新建任务", false, buttonImageOptions7, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", -1, true, superToolTip7, true, false, true, null, -1),
+            new DevExpress.XtraEditors.ButtonsPanelControl.GroupBoxButton("编辑任务", false, buttonImageOptions8, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", -1, true, superToolTip8, true, false, true, null, -1),
+            new DevExpress.XtraEditors.ButtonsPanelControl.GroupBoxButton("删除任务", false, buttonImageOptions9, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", -1, true, superToolTip9, true, false, true, null, -1)});
             this.layoutControlGroup1.HeaderButtonsLocation = DevExpress.Utils.GroupElementLocation.AfterText;
             this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
             this.layoutControlItem1});
@@ -434,10 +424,10 @@ namespace XdCxRhDW.App.UserControl
             this.layoutControlItemSearch,
             this.layoutControlGroup3,
             this.emptySpaceItem1});
-            this.layoutControlGroup2.Location = new System.Drawing.Point(185, 186);
+            this.layoutControlGroup2.Location = new System.Drawing.Point(183, 184);
             this.layoutControlGroup2.Name = "layoutControlGroup2";
             this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
-            this.layoutControlGroup2.Size = new System.Drawing.Size(852, 337);
+            this.layoutControlGroup2.Size = new System.Drawing.Size(854, 339);
             this.layoutControlGroup2.Text = "定位结果";
             // 
             // layoutControlItem2
@@ -446,7 +436,7 @@ namespace XdCxRhDW.App.UserControl
             this.layoutControlItem2.Location = new System.Drawing.Point(0, 28);
             this.layoutControlItem2.Name = "layoutControlItem2";
             this.layoutControlItem2.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
-            this.layoutControlItem2.Size = new System.Drawing.Size(846, 283);
+            this.layoutControlItem2.Size = new System.Drawing.Size(848, 284);
             this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0);
             this.layoutControlItem2.TextVisible = false;
             // 
@@ -527,7 +517,7 @@ namespace XdCxRhDW.App.UserControl
             this.emptySpaceItem1.AllowHotTrack = false;
             this.emptySpaceItem1.Location = new System.Drawing.Point(670, 0);
             this.emptySpaceItem1.Name = "emptySpaceItem1";
-            this.emptySpaceItem1.Size = new System.Drawing.Size(176, 28);
+            this.emptySpaceItem1.Size = new System.Drawing.Size(178, 28);
             this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0);
             // 
             // splitterItem1
@@ -535,14 +525,14 @@ namespace XdCxRhDW.App.UserControl
             this.splitterItem1.AllowHotTrack = true;
             this.splitterItem1.Location = new System.Drawing.Point(173, 0);
             this.splitterItem1.Name = "splitterItem1";
-            this.splitterItem1.Size = new System.Drawing.Size(12, 523);
+            this.splitterItem1.Size = new System.Drawing.Size(10, 523);
             // 
             // splitterItem2
             // 
             this.splitterItem2.AllowHotTrack = true;
-            this.splitterItem2.Location = new System.Drawing.Point(185, 174);
+            this.splitterItem2.Location = new System.Drawing.Point(183, 174);
             this.splitterItem2.Name = "splitterItem2";
-            this.splitterItem2.Size = new System.Drawing.Size(852, 12);
+            this.splitterItem2.Size = new System.Drawing.Size(854, 10);
             // 
             // svgImageCollection1
             // 
@@ -570,7 +560,6 @@ namespace XdCxRhDW.App.UserControl
             // popupMenu2
             // 
             this.popupMenu2.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] {
-            new DevExpress.XtraBars.LinkPersistInfo(this.btnTar),
             new DevExpress.XtraBars.LinkPersistInfo(this.btnDrawDto),
             new DevExpress.XtraBars.LinkPersistInfo(this.btnDrawDfo),
             new DevExpress.XtraBars.LinkPersistInfo(this.btnDrawCX),
@@ -670,7 +659,6 @@ namespace XdCxRhDW.App.UserControl
         private DevExpress.Utils.Html.HtmlTemplateCollection htmlTemplateCollection1;
         private DevExpress.Utils.Html.HtmlTemplate htmlTemplate1;
         private DevExpress.XtraBars.PopupMenu popupMenu2;
-        private DevExpress.XtraBars.BarButtonItem btnTar;
         private DevExpress.XtraBars.BarButtonItem btnDrawDto;
         private DevExpress.XtraBars.BarButtonItem btnDrawDfo;
         private DevExpress.XtraBars.BarButtonItem btnDrawCX;

+ 47 - 34
XdCxRhDW.App/UserControl/CtrlHome.cs

@@ -125,6 +125,10 @@ namespace XdCxRhDW.App.UserControl
                    {
                        UseMirr(items.ToList());
                    });
+                mapControl1.AddRectMenu<PosRes>("编辑目标", SvgHelper.LoadFromFile("Image\\Edit.svg"), items =>
+                {
+                    EditTarget(items.ToList());
+                });
                 mapControl1.AddPosMenu<PosRes>("绘制时差线", SvgHelper.LoadFromFile("Image\\DtoLine.svg"), item =>
                 {
                     DrawDtoLine(item);
@@ -257,6 +261,49 @@ namespace XdCxRhDW.App.UserControl
 
             WaitHelper.CloseForm();
         }
+        private async void EditTarget(List<PosRes> items)
+        {
+            if (items == null || items.Count() == 0)
+            {
+                DxHelper.MsgBoxHelper.ShowWarning($"请选择需要编辑目标的定位数据信息!");
+                return;
+            }
+            try
+            {
+                var firstItem = items.First();
+                EditorTar frm = new EditorTar(new TargetInfo() { ID = firstItem.TargetID.HasValue ? firstItem.TargetID.Value : 0, TargetName = firstItem.TarName });
+                if (frm.ShowDialog() != DialogResult.OK) return;
+                var tar = frm.info;
+                var groupItems = items.GroupBy(p => p.SigTime.ToString("yyyyMMdd"));
+                foreach (var groupItem in groupItems)
+                {
+                    var ids = groupItem.Select(m => m.ID).ToList();
+                    using (RHDWPartContext db = RHDWPartContext.GetContext(groupItem.First().SigTime))
+                    {
+                        var array = await db.PosRes.Where(p => ids.Contains(p.ID)).ToArrayAsync();
+                        EditTarget(array, tar);
+                        await db.SaveChangesAsync();
+                    }
+                }
+                EditTarget(items, tar);
+                gridView2.RefreshData();
+            }
+            catch (Exception ex)
+            {
+                Serilog.Log.Error(ex, "编辑定位目标异常!");
+                MsgBoxHelper.ShowError("编辑定位目标异常!");
+            }
+
+        }
+        private void EditTarget(IEnumerable<PosRes> pos, TargetInfo tar)
+        {
+            foreach (var item in pos)
+            {
+                item.TargetID = tar.ID;
+                item.TarName = tar.TargetName;
+            }
+
+        }
         private async void UseMirr(List<PosRes> items)
         {
             if (items == null || items.Count() == 0)
@@ -278,7 +325,6 @@ namespace XdCxRhDW.App.UserControl
                     {
                         var array = await db.PosRes.Where(p => ids.Contains(p.ID)).ToArrayAsync();
                         UseMirror(array);
-                        db.PosRes.AddOrUpdate(array);
                         await db.SaveChangesAsync();
 
                     }
@@ -719,39 +765,6 @@ namespace XdCxRhDW.App.UserControl
             mapControl1.UpdatePosItem(p);
         }
 
-        private async void btnTar_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
-        {
-            try
-            {
-                //var ids = gridView2.GetSelectedRows();
-                //if (ids.Length <= 0) return;
-
-                //var fisrtitem = gridView2.GetRow(ids[0]) as PosRes;
-                //EditorTar frm = new EditorTar(new TargetInfo() { ID = fisrtitem.TargetID.HasValue ? fisrtitem.TargetID.Value : 0, TargetName = fisrtitem.TarName });
-                //if (frm.ShowDialog() != DialogResult.OK) return;
-                //var tar = frm.info;
-                //using (RHDWContext db = new RHDWContext())
-                //{
-                //    foreach (var id in ids)
-                //    {
-                //        var item = gridView2.GetRow(id) as PosRes;
-                //        var tarItem = await db.PosRes.Where(p => p.ID == item.ID).FirstOrDefaultAsync();
-                //        if (tarItem != null)
-                //        {
-                //            item.TargetID = tarItem.TargetID = tar.ID;
-                //            item.TarName = tarItem.TarName = tar.TargetName;
-                //        }
-
-                //    }
-                //    await db.SaveChangesAsync();
-                //}
-            }
-            catch (Exception ex)
-            {
-                Serilog.Log.Error(ex, "编辑定位目标异常");
-                DxHelper.MsgBoxHelper.ShowError("编辑定位目标异常");
-            }
-        }
 
         private void btnDrawDto_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {

+ 3 - 63
XdCxRhDW.App/UserControl/CtrlHome.resx

@@ -178,66 +178,6 @@
         YWNrIiAvPg0KICA8cGF0aCBkPSJNMjksMTdsLTgsOGwtNC00bDgtOEwyOSwxN3ogTTMwLDE2bDEuNy0x
         LjdjMC40LTAuNCwwLjQtMSwwLTEuM0wyOSwxMC4zYy0wLjQtMC40LTEtMC40LTEuMywwTDI2LDEyTDMw
         LDE2eiAgIE0xNiwyMnY0aDRMMTYsMjJ6IiBjbGFzcz0iQmx1ZSIgLz4NCjwvc3ZnPgs=
-</value>
-  </data>
-  <data name="btnDrawDto.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi4z
-        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
-        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAJ0CAAAC77u/
-        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
-        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
-        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
-        Y2U9InByZXNlcnZlIiBpZD0iQ3JlYXRlX1NjYXR0ZXJfQ2hhcnRfTGluZXMiIHN0eWxlPSJlbmFibGUt
-        YmFja2dyb3VuZDpuZXcgMCAwIDMyIDMyIj4NCiAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5CbHVl
-        e2ZpbGw6IzExNzdENzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9Cjwvc3R5bGU+DQogIDxwYXRoIGQ9
-        Ik04LDYuMmwtMy4xLDYuM2wtMS44LTAuOUw4LDEuOGwxMi4zLDIyLjVsNy4xLTcuMWwxLjQsMS40bC04
-        LjksOC45TDgsNi4yTDgsNi4yeiBNNC45LDEyLjRMNC45LDEyLjQgIEw0LjksMTIuNEw0LjksMTIuNEw0
-        LjksMTIuNHoiIGNsYXNzPSJZZWxsb3ciIC8+DQogIDxwYXRoIGQ9Ik00LjQsMjQuOUw0LjQsMjQuOUw0
-        LjQsMjQuOUw0LjQsMjQuOUw0LjQsMjQuOXogTTMuNiwyMy4xbDE1LjgtNy45bDcuOS05LjhsMS42LDEu
-        MmwtOC4xLDEwLjJMNC40LDI0LjkgIEwzLjYsMjMuMUwzLjYsMjMuMXoiIGNsYXNzPSJCbHVlIiAvPg0K
-        PC9zdmc+Cw==
-</value>
-  </data>
-  <data name="btnDrawDfo.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi4z
-        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
-        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAN8HAAAC77u/
-        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
-        IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
-        MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
-        Y2U9InByZXNlcnZlIiBpZD0iQ3JlYXRlU2NhdHRlcl9DaGFydF9TbW9vdGhfTGluZXNfQW5kX01hcmtl
-        cnMiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDMyIDMyIj4NCiAgPHN0eWxlIHR5cGU9
-        InRleHQvY3NzIj4KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuUmVke2ZpbGw6I0QxMUMxQzt9CgkuWWVs
-        bG93e2ZpbGw6I0ZGQjExNTt9Cjwvc3R5bGU+DQogIDxwYXRoIGQ9Ik02LDIzYzAsMS4xLTAuOSwyLTIs
-        MmMtMS4xLDAtMi0wLjktMi0yczAuOS0yLDItMkM1LjEsMjEsNiwyMS45LDYsMjN6IE0yOCw0Yy0xLjEs
-        MC0yLDAuOS0yLDJzMC45LDIsMiwyICBjMS4xLDAsMi0wLjksMi0yUzI5LjEsNCwyOCw0eiBNMTcsMTUu
-        MWMtMSwwLjMtMS45LDAuNC0yLjcsMC42Yy0xLjUsMC4yLTIuNCwwLjMtMi40LDAuM2MtMC4xLDAtMi4y
-        LDAuMy00LjQsMS40ICBjLTEuMiwwLjYtMi40LDEuNC0zLjMsMi43YzAuNywwLjEsMS40LDAuNCwxLjgs
-        MC45YzAuNi0wLjcsMS40LTEuMywyLjMtMS43YzAuOS0wLjUsMS44LTAuNywyLjUtMC45YzAuNy0wLjIs
-        MS4xLTAuMiwxLjEtMC4yICBjMCwwLDIuNS0wLjIsNS43LTFDMTcuMywxNi41LDE3LDE1LjksMTcsMTUu
-        MXogTTI4LDljLTAuNSwwLTEtMC4yLTEuNS0wLjRjLTAuNywxLjktMi4zLDMuNC00LjIsNC41YzAuNCww
-        LjUsMC43LDEuMiwwLjcsMS45ICBjMi40LTEuMyw0LjYtMy4zLDUuNS02QzI4LjQsOSwyOC4yLDksMjgs
-        OXogTTIwLDEzYy0xLjEsMC0yLDAuOS0yLDJzMC45LDIsMiwyYzEuMSwwLDItMC45LDItMlMyMS4xLDEz
-        LDIwLDEzeiIgY2xhc3M9IkJsdWUiIC8+DQogIDxwYXRoIGQ9Ik0xNywyNi4zYy0xLTAuNS0xLjgtMS4y
-        LTIuNC0yYy0xLjMtMS42LTItMy42LTIuNi01LjVjLTAuNC0xLjMtMC42LTIuNy0wLjctMy45QzExLjUs
-        MTUsMTEuOCwxNSwxMiwxNSAgYzAuNSwwLDAuOS0wLjEsMS4zLTAuM2MwLDAuMywwLjEsMC42LDAuMSww
-        LjljMC40LDIuNiwxLjIsNS42LDIuNyw3LjRjMC40LDAuNSwwLjksMC45LDEuNCwxLjNDMTcuMiwyNC44
-        LDE3LDI1LjQsMTcsMjYgIEMxNywyNi4xLDE3LDI2LjIsMTcsMjYuM3ogTTEyLjgsOS4xYy0wLjEtMC40
-        LTAuMi0wLjktMC40LTEuNEMxMS45LDYsMTAuNiw0LDgsNEM2LjcsNCw1LjYsNC42LDQuOSw1LjRDNCw2
-        LjUsMy42LDcuOSwzLjMsOS4xICBDMy41LDksMy44LDksNCw5YzAuNSwwLDAuOSwwLjEsMS4zLDAuM2Mw
-        LTAuMiwwLjEtMC40LDAuMS0wLjVjMC4yLTAuOCwwLjYtMS41LDEtMkM2LjksNi4zLDcuMyw2LDgsNmMx
-        LjQsMCwyLjEsMSwyLjYsMi4zICBjMC4xLDAuMywwLjIsMC42LDAuMiwwLjlDMTEuMiw5LjEsMTEuNiw5
-        LDEyLDlDMTIuMyw5LDEyLjUsOS4xLDEyLjgsOS4xeiBNMjgsMTljLTAuNSwwLTAuOS0wLjEtMS4zLTAu
-        M2MtMC4zLDEuMi0wLjcsMi41LTEuNCwzLjYgIGMtMC43LDEtMS41LDEuOC0yLjYsMi4yQzIyLjgsMjUs
-        MjMsMjUuNSwyMywyNmMwLDAuMiwwLDAuNC0wLjEsMC41YzIuNi0wLjksNC4yLTMuMSw1LTUuMWMwLjMt
-        MC45LDAuNi0xLjcsMC43LTIuNCAgQzI4LjQsMTksMjguMiwxOSwyOCwxOXogTTQsMTBjLTEuMSwwLTIs
-        MC45LTIsMnMwLjksMiwyLDJjMS4xLDAsMi0wLjksMi0yUzUuMSwxMCw0LDEweiBNMTIsMTBjLTEuMSww
-        LTIsMC45LTIsMnMwLjksMiwyLDIgIGMxLjEsMCwyLTAuOSwyLTJTMTMuMSwxMCwxMiwxMHogTTIwLDI0
-        Yy0xLjEsMC0yLDAuOS0yLDJzMC45LDIsMiwyYzEuMSwwLDItMC45LDItMlMyMS4xLDI0LDIwLDI0eiBN
-        MjgsMTRjLTEuMSwwLTIsMC45LTIsMiAgczAuOSwyLDIsMmMxLjEsMCwyLTAuOSwyLTJTMjkuMSwxNCwy
-        OCwxNHoiIGNsYXNzPSJZZWxsb3ciIC8+DQo8L3N2Zz4L
 </value>
   </data>
   <data name="btnDrawCX.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -334,7 +274,7 @@
   <metadata name="toolTipController1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
     <value>391, 17</value>
   </metadata>
-  <data name="buttonImageOptions4.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="buttonImageOptions7.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi4z
         LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
@@ -353,7 +293,7 @@
         DQogIDwvZz4NCjwvc3ZnPgs=
 </value>
   </data>
-  <data name="buttonImageOptions5.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="buttonImageOptions8.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi4z
         LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
@@ -374,7 +314,7 @@
         ICA8L2c+DQo8L3N2Zz4L
 </value>
   </data>
-  <data name="buttonImageOptions6.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="buttonImageOptions9.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi4z
         LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl

+ 5 - 1
XdCxRhDW.App/UserControl/CtrlTarget.cs

@@ -106,8 +106,12 @@ namespace XdCxRhDW.App.UserControl
         {
             try
             {
+                if (XtraMessageBox.Show("确认删除选择得目标信息?", "确认", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
+                {
+                    return;
+                }
                 var ids = gridView1.GetSelectedRows();
-
+               
                 using (RHDWContext db = new RHDWContext())
                 {
                     foreach (var id in ids)

+ 1 - 0
XdCxRhDW.App/UserControl/CtrlXl.cs

@@ -16,6 +16,7 @@ using System.Windows.Forms;
 using System.Net.Http;
 using ExtensionsDev;
 using System.Windows.Documents;
+using XdCxRhDW.Repostory;
 
 namespace XdCxRhDW.App.UserControl
 {

+ 2 - 1
XdCxRhDW.App/UserControl/X1D1GDOPParam.cs

@@ -8,6 +8,7 @@ using XdCxRhDW.Repostory.Model;
 using XdCxRhDW.Repostory.EFContext;
 using XdCxRhDW.Core.Api;
 using System.Runtime.ConstrainedExecution;
+using XdCxRhDW.Repostory;
 namespace XdCxRhDW.App.UserControl
 {
     public partial class X1D1GDOPParam : DevExpress.XtraEditors.XtraUserControl
@@ -53,7 +54,7 @@ namespace XdCxRhDW.App.UserControl
                     this.txtRefLocation1.Text = $"{station.RefLon},{station.RefLat}";
                     this.txtCXStation.Text = $"{station.CxLon},{station.CxLat}";
                 }
-                var xlList = db.XlInfos.OrderBy(p => p.SatName).OrderByDescending(p => p.TimeBJ).ToList();
+                var xlList = XlCache.GetAllAsync().Result.OrderBy(p => p.SatName).OrderByDescending(p => p.TimeBJ).ToList();
                 xlall.AddRange(xlList.Select(m => m.TwoLine));
                 if (xlall.Count() == 0) return;
                 if (cg.MainCode.HasValue && xlList.Any(m => m.SatCode == cg.MainCode.Value))

+ 8 - 5
XdCxRhDW.App/UserControl/X2D1GDOPParam.cs

@@ -8,6 +8,7 @@ using XdCxRhDW.Repostory.Model;
 using XdCxRhDW.Repostory.EFContext;
 using XdCxRhDW.Core.Api;
 using DxHelper;
+using XdCxRhDW.Repostory;
 namespace XdCxRhDW.App.UserControl
 {
     public partial class X2D1GDOPParam : DevExpress.XtraEditors.XtraUserControl
@@ -39,7 +40,7 @@ namespace XdCxRhDW.App.UserControl
             this.txtCapTime.DateTime = item.SigTime;
             this.txtDtousErr1.EditValue = 1;
             this.txtSatLocErr1.EditValue = 10000;
-            //List<string> xlall = new List<string>();
+            List<string> xlall = new List<string>();
             string mainTle = string.Empty;
             string adjaTle = string.Empty;
 
@@ -63,8 +64,9 @@ namespace XdCxRhDW.App.UserControl
                     this.txtStationLocation1.Text = $"{station.CdbTxLon},{station.CdbTxLat}";
                     this.txtRefLocation1.Text = $"{station.RefLon},{station.RefLat}";
                 }
-                var xlList = XlCache.GetAll();
-                if (xlList.Count == 0) return;
+                var xlList = XlCache.GetAllAsync().Result;
+                xlall.AddRange(xlList.Select(m => m.TwoLine));
+                if (xlall.Count == 0) return;
                 if (cg.MainCode.HasValue && xlList.Any(m => m.SatCode == cg.MainCode.Value))
                 {
                     mainTle = xlList.First(m => m.SatCode == cg.MainCode.Value).TwoLine;
@@ -82,9 +84,10 @@ namespace XdCxRhDW.App.UserControl
                 {
                     adjaTle = xlList.First().TwoLine;
                 }
-                txtTleMain.UseDefault().SetStringData(xlList.Select(p => p.TwoLine)).Text = mainTle;
-                txtTleAdja.UseDefault().SetStringData(xlList.Select(p => p.TwoLine)).Text = adjaTle;
             }
+
+            txtTleMain.UseDefault().SetStringData(xlall).Text = mainTle;
+            txtTleAdja.UseDefault().SetStringData(xlall).Text = adjaTle;
         }
 
 

+ 2 - 1
XdCxRhDW.App/UserControl/X2DFGDOPParam.cs

@@ -7,6 +7,7 @@ using System.Collections.Generic;
 using System.Data;
 using System.Linq;
 using XdCxRhDW.Core.Api;
+using XdCxRhDW.Repostory;
 using XdCxRhDW.Repostory.EFContext;
 using XdCxRhDW.Repostory.Model;
 namespace XdCxRhDW.App.UserControl
@@ -57,7 +58,7 @@ namespace XdCxRhDW.App.UserControl
                 this.txtFu1.EditValue = cg.TarFreqUp.HasValue ? cg.TarFreqUp.Value * 1e-6 : 950;
                 this.txtFu2.EditValue = cg.RefFreqUp.HasValue ? cg.RefFreqUp.Value * 1e-6 : 950;
 
-                var xlList = db.XlInfos.OrderBy(p => p.SatName).OrderByDescending(p => p.TimeBJ).ToList();
+                var xlList = XlCache.GetAllAsync().Result.OrderBy(p => p.SatName).OrderByDescending(p => p.TimeBJ).ToList();
                 xlall.AddRange(xlList.Select(m => m.TwoLine));
                 if (xlall.Count() == 0) return;
                 if (cg.MainCode.HasValue && xlList.Any(m => m.SatCode == cg.MainCode.Value))

+ 2 - 1
XdCxRhDW.App/UserControl/X3DFGDOPParam .cs

@@ -7,6 +7,7 @@ using System.Collections.Generic;
 using System.Data;
 using System.Linq;
 using XdCxRhDW.Core.Api;
+using XdCxRhDW.Repostory;
 using XdCxRhDW.Repostory.EFContext;
 using XdCxRhDW.Repostory.Model;
 
@@ -59,7 +60,7 @@ namespace XdCxRhDW.App.UserControl
                 this.txtFu1.EditValue = cg.TarFreqUp.HasValue ? cg.TarFreqUp.Value * 1e-6 : 950;
                 this.txtFu2.EditValue = cg.RefFreqUp.HasValue ? cg.RefFreqUp.Value * 1e-6 : 950;
 
-                var xlList = db.XlInfos.OrderBy(p => p.SatName).OrderByDescending(p => p.TimeBJ).ToList();
+                var xlList = XlCache.GetAllAsync().Result.OrderBy(p => p.SatName).OrderByDescending(p => p.TimeBJ).ToList();
                 xlall.AddRange(xlList.Select(m => m.TwoLine));
                 if (xlall.Count() == 0) return;
                 if (cg.MainCode.HasValue && xlList.Any(m => m.SatCode == cg.MainCode.Value))

+ 2 - 1
XdCxRhDW.App/UserControl/X3GDOPParam.cs

@@ -8,6 +8,7 @@ using XdCxRhDW.Repostory.Model;
 using XdCxRhDW.Repostory.EFContext;
 using XdCxRhDW.Core.Api;
 using DxHelper;
+using XdCxRhDW.Repostory;
 namespace XdCxRhDW.App.UserControl
 {
     public partial class X3GDOPParam : DevExpress.XtraEditors.XtraUserControl
@@ -55,7 +56,7 @@ namespace XdCxRhDW.App.UserControl
                 {
                     this.txtRefLocation1.Text = $"{station.RefLon},{station.RefLat}";
                 }
-                var xlList = db.XlInfos.OrderBy(p => p.SatName).OrderByDescending(p => p.TimeBJ).ToList();
+                var xlList = XlCache.GetAllAsync().Result.OrderBy(p => p.SatName).OrderByDescending(p => p.TimeBJ).ToList();
                 xlall.AddRange(xlList.Select(m => m.TwoLine));
                 if (xlall.Count() == 0) return;
                 if (cg.MainCode.HasValue && xlList.Any(m => m.SatCode == cg.MainCode.Value))

+ 4 - 1
XdCxRhDW.App/XdCxRhDW.App.csproj

@@ -442,7 +442,6 @@
     <Compile Include="UserControl\X2D1GDOPParam.Designer.cs">
       <DependentUpon>X2D1GDOPParam.cs</DependentUpon>
     </Compile>
-    <Compile Include="XlCache.cs" />
     <EmbeddedResource Include="CorTools\CgImageForm.resx">
       <DependentUpon>CgImageForm.cs</DependentUpon>
     </EmbeddedResource>
@@ -484,6 +483,7 @@
     </EmbeddedResource>
     <EmbeddedResource Include="MainForm.resx">
       <DependentUpon>MainForm.cs</DependentUpon>
+      <SubType>Designer</SubType>
     </EmbeddedResource>
     <None Include="data.gmdb">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
@@ -586,6 +586,9 @@
     <Content Include="Image\DtoLine.svg">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </Content>
+    <Content Include="Image\Edit.svg">
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+    </Content>
     <Content Include="Image\GDOP.svg">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </Content>

+ 1 - 0
XdCxRhDW.Core/XdCxRhDW.Core.csproj

@@ -122,6 +122,7 @@
     <None Include="Api\频差线\Positioning_dtf.dll">
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
+    <None Include="app.config" />
     <None Include="packages.config" />
   </ItemGroup>
   <ItemGroup>

+ 11 - 0
XdCxRhDW.Core/app.config

@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+      <dependentAssembly>
+        <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
+      </dependentAssembly>
+    </assemblyBinding>
+  </runtime>
+</configuration>

+ 8 - 0
XdCxRhDW.Repostory/App.config

@@ -16,4 +16,12 @@
       <add name="SQLite Data Provider (Entity Framework 6)" invariant="System.Data.SQLite.EF6" description=".NET Framework Data Provider for SQLite (Entity Framework 6)" type="System.Data.SQLite.EF6.SQLiteProviderFactory, System.Data.SQLite.EF6" />
     <remove invariant="System.Data.SQLite" /><add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".NET Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" /></DbProviderFactories>
   </system.data>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+      <dependentAssembly>
+        <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
+      </dependentAssembly>
+    </assemblyBinding>
+  </runtime>
 </configuration>

+ 19 - 0
XdCxRhDW.Repostory/XdCxRhDW.Repostory.csproj

@@ -37,10 +37,16 @@
     <Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
       <HintPath>..\packages\EntityFramework.6.4.4\lib\net45\EntityFramework.dll</HintPath>
     </Reference>
+    <Reference Include="Serilog, Version=2.0.0.0, Culture=neutral, PublicKeyToken=24c2f752a8e58a10, processorArchitecture=MSIL">
+      <HintPath>..\packages\Serilog.3.1.1\lib\net471\Serilog.dll</HintPath>
+    </Reference>
     <Reference Include="SQLite.CodeFirst, Version=1.7.0.36, Culture=neutral, PublicKeyToken=eb96ba0a78d831a7, processorArchitecture=MSIL">
       <HintPath>..\packages\SQLite.CodeFirst.1.7.0.36\lib\net45\SQLite.CodeFirst.dll</HintPath>
     </Reference>
     <Reference Include="System" />
+    <Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+      <HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
+    </Reference>
     <Reference Include="System.ComponentModel.DataAnnotations" />
     <Reference Include="System.Core" />
     <Reference Include="System.Data.SQLite, Version=1.0.118.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
@@ -52,7 +58,19 @@
     <Reference Include="System.Data.SQLite.Linq, Version=1.0.118.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
       <HintPath>..\packages\System.Data.SQLite.Linq.1.0.118.0\lib\net46\System.Data.SQLite.Linq.dll</HintPath>
     </Reference>
+    <Reference Include="System.Diagnostics.DiagnosticSource, Version=7.0.0.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+      <HintPath>..\packages\System.Diagnostics.DiagnosticSource.7.0.2\lib\net462\System.Diagnostics.DiagnosticSource.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Memory, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+      <HintPath>..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
+    </Reference>
     <Reference Include="System.Numerics" />
+    <Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+      <HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
+      <HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
+    </Reference>
     <Reference Include="System.Xml.Linq" />
     <Reference Include="System.Data.DataSetExtensions" />
     <Reference Include="Microsoft.CSharp" />
@@ -78,6 +96,7 @@
     <Compile Include="Model\XlInfo.cs" />
     <Compile Include="PosData.cs" />
     <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="XlCache.cs" />
   </ItemGroup>
   <ItemGroup>
     <None Include="App.config" />

+ 2 - 3
XdCxRhDW.App/XlCache.cs → XdCxRhDW.Repostory/XlCache.cs

@@ -1,5 +1,4 @@
-using DxHelper;
-using System;
+using System;
 using System.Collections.Generic;
 using System.Data.Entity;
 using System.IO;
@@ -9,7 +8,7 @@ using System.Threading.Tasks;
 using XdCxRhDW.Repostory.EFContext;
 using XdCxRhDW.Repostory.Model;
 
-namespace XdCxRhDW.App
+namespace XdCxRhDW.Repostory
 {
     public static class XlCache
     {

+ 6 - 0
XdCxRhDW.Repostory/packages.config

@@ -1,10 +1,16 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
   <package id="EntityFramework" version="6.4.4" targetFramework="net472" />
+  <package id="Serilog" version="3.1.1" targetFramework="net472" />
   <package id="SQLite.CodeFirst" version="1.7.0.36" targetFramework="net472" />
   <package id="Stub.System.Data.SQLite.Core.NetFramework" version="1.0.118.0" targetFramework="net472" />
+  <package id="System.Buffers" version="4.5.1" targetFramework="net472" />
   <package id="System.Data.SQLite" version="1.0.118.0" targetFramework="net472" />
   <package id="System.Data.SQLite.Core" version="1.0.118.0" targetFramework="net472" />
   <package id="System.Data.SQLite.EF6" version="1.0.118.0" targetFramework="net472" />
   <package id="System.Data.SQLite.Linq" version="1.0.118.0" targetFramework="net472" />
+  <package id="System.Diagnostics.DiagnosticSource" version="7.0.2" targetFramework="net472" />
+  <package id="System.Memory" version="4.5.5" targetFramework="net472" />
+  <package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net472" />
+  <package id="System.Runtime.CompilerServices.Unsafe" version="6.0.0" targetFramework="net472" />
 </packages>

+ 75 - 45
XdCxRhDW.WebApi/Controllers/PosController.cs

@@ -21,6 +21,8 @@ using XdCxRhDW.Repostory.EFContext;
 using XdCxRhDW.Repostory.Model;
 using XdCxRhDW.WebApi.Controllers;
 using System.ComponentModel.DataAnnotations;
+using System.Web.Caching;
+using XdCxRhDW.Repostory;
 
 namespace XdCxRhDW.App.WebAPI
 {
@@ -127,10 +129,13 @@ namespace XdCxRhDW.App.WebAPI
             }
             using (RHDWPartContext db = RHDWPartContext.GetContext(dto.SigTime))
             {
-
-                var parameter1 = new SQLiteParameter("@sigTime", dto.SigTime);
-                var parameter2 = new SQLiteParameter("@satcode", dto.MainCode);
-                var xlInfo1 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter2).FirstOrDefaultAsync();
+                var xlInfoList = await XlCache.GetAllAsync();
+                var mainXl = xlInfoList.Where(w => w.SatCode == dto.MainCode);
+                var minTime = mainXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo1 = mainXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime).FirstOrDefault();
+                //var parameter1 = new SQLiteParameter("@sigTime", dto.SigTime);
+                //var parameter2 = new SQLiteParameter("@satcode", dto.MainCode);
+                //var xlInfo1 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter2).FirstOrDefaultAsync();
                 if (xlInfo1 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.MainCode}]的双行根数星历");
@@ -297,17 +302,20 @@ namespace XdCxRhDW.App.WebAPI
             }
             using (RHDWPartContext db = RHDWPartContext.GetContext(dto.SigTime))
             {
-                var parameter1 = new SQLiteParameter("@sigTime", dto.SigTime);
-                var parameter2 = new SQLiteParameter("@satcode", dto.MainCode);
-                var parameter3 = new SQLiteParameter("@satcode", dto.AdjaCode);
-                var xlInfo1 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter2).FirstOrDefaultAsync();
+                var xlInfoList = await XlCache.GetAllAsync();
+
+                var mainXl = xlInfoList.Where(w => w.SatCode == dto.MainCode);
+                var minTime = mainXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo1 = mainXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime).FirstOrDefault();
                 if (xlInfo1 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.MainCode}]的双行根数星历");
                     return Error<PosResDto>($"未找到卫星[{dto.MainCode}]的双行根数星历");
                 }
 
-                var xlInfo2 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter3).FirstOrDefaultAsync();
+                var adjaXl = xlInfoList.Where(w => w.SatCode == dto.AdjaCode);
+                var minTime2 = adjaXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo2 = adjaXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime2).FirstOrDefault();
                 if (xlInfo2 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.AdjaCode}]的双行根数星历");
@@ -476,17 +484,20 @@ namespace XdCxRhDW.App.WebAPI
             }
             using (RHDWPartContext db = RHDWPartContext.GetContext(dto.SigTime))
             {
-                var parameter1 = new SQLiteParameter("@sigTime", dto.SigTime);
-                var parameter2 = new SQLiteParameter("@satcode", dto.MainCode);
-                var parameter3 = new SQLiteParameter("@satcode", dto.AdjaCode);
-                var xlInfo1 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter2).FirstOrDefaultAsync();
+               var xlInfoList = await XlCache.GetAllAsync();
+
+                var mainXl = xlInfoList.Where(w => w.SatCode == dto.MainCode);
+                var minTime = mainXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo1 = mainXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime).FirstOrDefault();
                 if (xlInfo1 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.MainCode}]的双行根数星历");
                     return Error<PosResDto>($"未找到卫星[{dto.MainCode}]的双行根数星历");
                 }
 
-                var xlInfo2 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter3).FirstOrDefaultAsync();
+                var adjaXl = xlInfoList.Where(w => w.SatCode == dto.AdjaCode);
+                var minTime2 = adjaXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo2 = adjaXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime2).FirstOrDefault();
                 if (xlInfo2 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.AdjaCode}]的双行根数星历");
@@ -671,16 +682,20 @@ namespace XdCxRhDW.App.WebAPI
             }
             using (RHDWPartContext db = RHDWPartContext.GetContext(dto.SigTime))
             {
-                var parameter1 = new SQLiteParameter("@sigTime", dto.SigTime);
-                var parameter2 = new SQLiteParameter("@satcode", dto.MainCode);
-                var parameter3 = new SQLiteParameter("@satcode", dto.AdjaCode);
-                var xlInfo1 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter2).FirstOrDefaultAsync();
+                var xlInfoList = await XlCache.GetAllAsync();
+
+                var mainXl = xlInfoList.Where(w => w.SatCode == dto.MainCode);
+                var minTime = mainXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo1 = mainXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime).FirstOrDefault();
                 if (xlInfo1 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.MainCode}]的双行根数星历");
                     return Error<PosResDto>($"未找到卫星[{dto.MainCode}]的双行根数星历");
                 }
-                var xlInfo2 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter3).FirstOrDefaultAsync();
+
+                var adjaXl = xlInfoList.Where(w => w.SatCode == dto.AdjaCode);
+                var minTime2 = adjaXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo2 = adjaXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime2).FirstOrDefault();
                 if (xlInfo2 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.AdjaCode}]的双行根数星历");
@@ -862,25 +877,29 @@ namespace XdCxRhDW.App.WebAPI
             }
             using (RHDWPartContext db = RHDWPartContext.GetContext(dto.SigTime))
             {
-                var parameter1 = new SQLiteParameter("@sigTime", dto.SigTime);
-                var parameter2 = new SQLiteParameter("@satcode", dto.MainCode);
-                var parameter3 = new SQLiteParameter("@satcode", dto.Adja1Code);
-                var parameter4 = new SQLiteParameter("@satcode", dto.Adja2Code);
-                var xlInfo1 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter2).FirstOrDefaultAsync();
+                var xlInfoList = await XlCache.GetAllAsync();
+
+                var mainXl = xlInfoList.Where(w => w.SatCode == dto.MainCode);
+                var minTime = mainXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo1 = mainXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime).FirstOrDefault();
                 if (xlInfo1 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.MainCode}]的双行根数星历");
                     return Error<PosResDto>($"未找到卫星[{dto.MainCode}]的双行根数星历");
                 }
 
-                var xlInfo2 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter3).FirstOrDefaultAsync();
+                var adja1Xl = xlInfoList.Where(w => w.SatCode == dto.Adja1Code);
+                var minTime2 = adja1Xl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo2 = adja1Xl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime2).FirstOrDefault();
                 if (xlInfo2 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.Adja1Code}]的双行根数星历");
                     return Error<PosResDto>($"未找到卫星[{dto.Adja1Code}]的双行根数星历");
                 }
 
-                var xlInfo3 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter4).FirstOrDefaultAsync();
+                var adja2Xl = xlInfoList.Where(w => w.SatCode == dto.Adja2Code);
+                var minTime3 = adja2Xl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo3 = adja2Xl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime3).FirstOrDefault();
                 if (xlInfo3 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.Adja2Code}]的双行根数星历");
@@ -1066,25 +1085,29 @@ namespace XdCxRhDW.App.WebAPI
             }
             using (RHDWPartContext db = RHDWPartContext.GetContext(dto.SigTime))
             {
-                var parameter1 = new SQLiteParameter("@sigTime", dto.SigTime);
-                var parameter2 = new SQLiteParameter("@satcode", dto.MainCode);
-                var parameter3 = new SQLiteParameter("@satcode", dto.Adja1Code);
-                var parameter4 = new SQLiteParameter("@satcode", dto.Adja2Code);
-                var xlInfo1 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter2).FirstOrDefaultAsync();
+                var xlInfoList = await XlCache.GetAllAsync();
+
+                var mainXl = xlInfoList.Where(w => w.SatCode == dto.MainCode);
+                var minTime = mainXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo1 = mainXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime).FirstOrDefault(); 
                 if (xlInfo1 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.MainCode}]的双行根数星历");
                     return Error<PosResDto>($"未找到卫星[{dto.MainCode}]的双行根数星历");
                 }
 
-                var xlInfo2 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter3).FirstOrDefaultAsync();
+                var adja1Xl = xlInfoList.Where(w => w.SatCode == dto.Adja1Code);
+                var minTime2 = adja1Xl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo2 = adja1Xl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime2).FirstOrDefault();
                 if (xlInfo2 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.Adja1Code}]的双行根数星历");
                     return Error<PosResDto>($"未找到卫星[{dto.Adja1Code}]的双行根数星历");
                 }
 
-                var xlInfo3 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter4).FirstOrDefaultAsync();
+                var adja2Xl = xlInfoList.Where(w => w.SatCode == dto.Adja2Code);
+                var minTime3 = adja2Xl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo3 = adja2Xl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime3).FirstOrDefault();
                 if (xlInfo3 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.Adja2Code}]的双行根数星历");
@@ -1285,25 +1308,29 @@ namespace XdCxRhDW.App.WebAPI
             }
             using (RHDWPartContext db = RHDWPartContext.GetContext(dto.SigTime))
             {
-                var parameter1 = new SQLiteParameter("@sigTime", dto.SigTime);
-                var parameter2 = new SQLiteParameter("@satcode", dto.MainCode);
-                var parameter3 = new SQLiteParameter("@satcode", dto.Adja1Code);
-                var parameter4 = new SQLiteParameter("@satcode", dto.Adja2Code);
-                var xlInfo1 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter2).FirstOrDefaultAsync();
+                var xlInfoList = await XlCache.GetAllAsync();
+
+                var mainXl = xlInfoList.Where(w => w.SatCode == dto.MainCode);
+                var minTime = mainXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo1 = mainXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime).FirstOrDefault(); 
                 if (xlInfo1 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.MainCode}]的双行根数星历");
                     return Error<PosResDto>($"未找到卫星[{dto.MainCode}]的双行根数星历");
                 }
 
-                var xlInfo2 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter3).FirstOrDefaultAsync();
+                var adja1Xl = xlInfoList.Where(w => w.SatCode == dto.Adja1Code);
+                var minTime2 = adja1Xl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo2 = adja1Xl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime2).FirstOrDefault();
                 if (xlInfo2 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.Adja1Code}]的双行根数星历");
                     return Error<PosResDto>($"未找到卫星[{dto.Adja1Code}]的双行根数星历");
                 }
 
-                var xlInfo3 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter4).FirstOrDefaultAsync();
+                var adja2Xl = xlInfoList.Where(w => w.SatCode == dto.Adja2Code);
+                var minTime3 = adja2Xl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo3 = adja2Xl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime3).FirstOrDefault();
                 if (xlInfo3 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.Adja2Code}]的双行根数星历");
@@ -1513,17 +1540,20 @@ namespace XdCxRhDW.App.WebAPI
             }
             using (RHDWPartContext db = RHDWPartContext.GetContext(dto.SigTime))
             {
-                var parameter1 = new SQLiteParameter("@sigTime", dto.SigTime);
-                var parameter2 = new SQLiteParameter("@satcode", dto.MainCode);
-                var parameter3 = new SQLiteParameter("@satcode", dto.AdjaCode);
-                var xlInfo1 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter2).FirstOrDefaultAsync();
+                var xlInfoList = await XlCache.GetAllAsync();
+
+                var mainXl = xlInfoList.Where(w => w.SatCode == dto.MainCode);
+                var minTime = mainXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo1 = mainXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime).FirstOrDefault();
                 if (xlInfo1 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.MainCode}]的双行根数星历");
                     return Error<PosResDto>($"未找到卫星[{dto.MainCode}]的双行根数星历");
                 }
 
-                var xlInfo2 = await db.XlInfos.SqlQuery("select * from XlInfo where ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))=(select min(ABS(JULIANDAY(TimeBJ)-JULIANDAY(@sigTime))) from XlInfo where satcode=@satcode)", parameter1, parameter3).FirstOrDefaultAsync();
+                var adjaXl = xlInfoList.Where(w => w.SatCode == dto.AdjaCode);
+                var minTime2 = adjaXl.Min(m => Math.Abs((m.TimeBJ - dto.SigTime).TotalSeconds));
+                var xlInfo2 = adjaXl.Where(w => Math.Abs((w.TimeBJ - dto.SigTime).TotalSeconds) == minTime2).FirstOrDefault();
                 if (xlInfo2 == null)
                 {
                     Serilog.Log.Error($"未找到卫星[{dto.AdjaCode}]的双行根数星历");