我们正在构建一个WPF Prism应用程序.我们有不同的开发人员在不同的模块项目上工作,并且多个模块被注入主Application Shell.主要应用程序也是一个单独的项目.我们还希望能够在不同的应用程序中使用这些模块.我们不希望在每个应用程序中命名具有相同名称的区域.
例如,假设我们有一个模块可用于两个不同的应用程序.在一个应用程序中,其开发人员可以将模块的区域命名为"DetailsRegion",而在另一个应用程序中,其开发人员可将其命名为"ResultsRegion".
我能找到的每个例子都通过硬编码模块类定义中的区域名称来注册View with the Region :
myRegionManager.RegisterViewWithRegion("RegionNameHere", GetType(ModuleViewType))
Run Code Online (Sandbox Code Playgroud)
我想要做的是将Region名称放在主应用程序的app.config文件中,并将此名称传递给模块.像这样的东西:
在主Shell应用程序的app.config中:
<Modules>
<SearchModule>
<add key="RegionName" value="SearchRegion" />
</SearchModule>
</Modules>
Run Code Online (Sandbox Code Playgroud)
在模块的类文件中:
Dim settings As NameValueCollection = CType(ConfigurationManager.GetSection("Modules/SearchModule"), NameValueCollection)
Dim regionName as string = settings("RegionName")
myRegionManager.RegisterViewWithRegion(regionName, GetType(SearchModuleType)
Run Code Online (Sandbox Code Playgroud)
在某种程度上,这将是完全将模块与shell和彼此分离的最后一步.
这在模块的视图中完美地工作.但我无法在模块的类定义文件中执行此操作,因为ConfigurationManager在该级别不可用.
我可以通过将区域名称放在模块的 app.config 的ApplicatonSettings部分来完成此操作.但这违背了能够将模块存储在一个位置以便由多个应用程序加载的目的.它确实需要在主应用程序的 app.config中.
有没有办法用区域注册模块的视图,而无需在代码中硬编码区域的名称?我们努力不要硬编码任何东西.这真的有必要吗?
我正在尝试使用监控区域来跟踪用户是否访问过地标.位置管理器在mapcontroller中与mapkit一起初始化
在视图控制器的viewdidload中:
if (self.locationManager == nil)
{
// NSLog(@"creating location manager");
self.locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation;
locationManager.distanceFilter = kCLDistanceFilterNone;
}
NSSet* set=[locationManager monitoredRegions];
if ([CLLocationManager regionMonitoringAvailable] && [CLLocationManager regionMonitoringEnabled]) {
NSLog(@"region monitoring okay");
NSLog(@"monitored regions: %@",set);
}
Run Code Online (Sandbox Code Playgroud)
我得到NSLogs"区域监控好"和所有区域正确.
添加区域就像这样完成
double metres=20.0;
CLLocationDistance dist=metres;
CLLocationAccuracy acc=1.0;
CLRegion *reg=[[CLRegion alloc] initCircularRegionWithCenter:coordinate radius:dist identifier:landmarkObj.landmarkName];
[locationManager startMonitoringForRegion:reg desiredAccuracy:acc];
Run Code Online (Sandbox Code Playgroud)
但回调都没有被触发
- (void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Entered"
message:region.identifier
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil, nil];
[alert show]; …Run Code Online (Sandbox Code Playgroud) 和其他人一样,我有一个没有显示滚动条的DataGrid.我认为我的情况所独有的是我在视觉或逻辑树中的任何地方都看不到StackPanel.我正在使用WPF Inspector来查看树.我已经尝试了各种建议来设置包含Grid列和行的高度和宽度但没有成功.我确定有一些我遗漏的内容是允许内容延伸到可见区域以外但我还不知道它到底是什么.任何帮助,将不胜感激.此应用程序是带有MEF应用程序的WPF Prism,DataGrid位于Prism区域的UserControl中.
Shell Window XAML:
<Window>
<Grid x:Name="GridOuterShell">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<ribbon:Ribbon Grid.Row="0" >
...
</ribbon:Ribbon>
<Grid x:Name="GridShellContent" Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition Height="Auto" />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="350" MinWidth="300"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<local:RegionBorderControl Grid.Row="0" Grid.Column="0" Grid.RowSpan="3" Margin="2,2,8,2" RegionName="{Binding MainRegionDisplayName}"
Style="{DynamicResource RegionBorderControlStyle}">
<ContentControl prism:RegionManager.RegionName="MainRegion"
VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"/>
</local:RegionBorderControl>
<GridSplitter Grid.Row="0" Grid.Column="1" Grid.RowSpan="3" HorizontalAlignment="Center" VerticalAlignment="Stretch"
Width="3" ShowsPreview="True" ResizeDirection="Columns" />
<local:RegionBorderControl Grid.Row="0" Grid.Column="2" RegionName="{Binding RightTopRegionDisplayName}"
Style="{DynamicResource RegionBorderControlStyle}">
<ContentControl prism:RegionManager.RegionName="RightTopRegion"
VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"/>
</local:RegionBorderControl>
<GridSplitter …Run Code Online (Sandbox Code Playgroud) "标记是否处于活动状态"只是意味着与Emacs中的"区域处于活动状态"相同,无论是否启用了瞬态标记模式?因此激活标记与激活区域相同?
我感到很困惑,因为在很多地方似乎可以互换地使用两个短语,而region-active-p的定义似乎采取的立场是,当且仅当启用了瞬态标记模式且标记处于活动状态时,该区域才被认为是活动的.
(defun region-active-p ()
"Return t if Transient Mark mode is enabled and the mark is active.
Some commands act specially on the region when Transient Mark
mode is enabled. Usually, such commands should use
`use-region-p' instead of this function, because `use-region-p'
also checks the value of `use-empty-active-region'."
(and transient-mark-mode mark-active))
Run Code Online (Sandbox Code Playgroud)
是什么关系
区域突出显示(即区域的背景颜色不同)
地区活跃
马克是活跃的
当启用瞬态标记模式时,以及何时禁用它?
我正在使用HBase的cloudera发行版(hbase-0.94.6-cdh4.5.0)和cloudera管理器来设置所有集群的配置.
我为HBase设置了以下属性:
<property>
<name>hbase.hregion.max.filesize</name>
<value>10737418240</value>
<source>hbase-default.xml</source>
</property>
Run Code Online (Sandbox Code Playgroud)
NB: 10737418240 <=> 10G
因此,根据我阅读的所有文档,数据应累积到一个区域,直到区域大小达到10G.
但是,它似乎没有用......也许我想念一些东西......
这是我的hbase表的所有区域及其大小:
root@hadoopmaster01:~# hdfs dfs -du -h /hbase/my_table
719 /hbase/my_table/.tableinfo.0000000001
0 /hbase/my_table/.tmp
222.2 M /hbase/my_table/08e225d0ae802ef805fff65c89a15de6
602.7 M /hbase/my_table/0f3bb09af53ebdf5e538b50d7f08786e
735.1 M /hbase/my_table/1152669b3ef439f08614e3785451c305
2.8 G /hbase/my_table/1203fbc208fc93a702c67130047a1e4f
379.3 M /hbase/my_table/1742b0e038ece763184829e25067f138
7.3 G /hbase/my_table/194eae40d50554ce39c82dd8b2785d96
627.1 M /hbase/my_table/28aa1df8140f4eb289db76a17c583028
274.6 M /hbase/my_table/2f55b9760dbcaefca0e1064ce5da6f48
1.5 G /hbase/my_table/392f6070132ec9505d7aaecdc1202418
1.5 G /hbase/my_table/4396a8d8c5663de237574b967bf49b8a
1.6 G /hbase/my_table/440964e857d9beee1c24104bd96b7d5c
1.5 G /hbase/my_table/533369f47a365ab06f863d02c88f89e2
2.5 G /hbase/my_table/6d86b7199c128ae891b84fd9b1ccfd6e
1.2 G /hbase/my_table/6e5e6878028841c4d1f4c3b64d04698b
1.6 G /hbase/my_table/7dc1c717de025f3c15aa087cda5f76d2
200.2 M /hbase/my_table/8157d48f833bb3b708726c703874569d
118.0 M /hbase/my_table/85fb1d24bf9d03d748f615d3907589f2
2.0 G /hbase/my_table/94dd01c81c73dc35c02b6bd2c17d8d22
265.1 M …
我有一个像心脏或任何随机形状的不规则形状的图片.我可以在视觉上使它透明,但我需要让它只在形状区域上可点击.我听说我应该使用"Region",但我无法弄清楚如何.
我试图搜索所有非空,透明或空的像素,并用它们创建一个点数组,但我无法创建/重塑当前控制区域.我正在尝试制作一个自定义控件,你可以选择一个按钮或图片,它们是不规则形状并且彼此靠近.
这是我正在处理的事情:

正如您在图片中看到的,有8个不同的部分(假设右侧和左侧组合).正如你所看到的,它们彼此接近,其中一些甚至适合其他人之间的空白区域.
我的目标是,例如,如果我点击Pectorals(图中的红色区域),它将变为彩色版本,并且会运行一堆其他代码.
问题是,默认情况下,当我们添加任何带有a的图片时PictureBox,它将Rectangle从它的边界开始围绕该图片创建.因此,如果我将两张图片(如图所示)放在一起,则一个空区域会阻止我点击另一张图片.
ClickEvent由于这个问题,它也引发了错误的对象.
我正在尝试设置"提升事件区域",我假设我们Graphic Region在图片存在的地方调用它.我可以用一个循环来收集像素的位置,该循环确定该图片的哪个坐标具有"颜色"(意味着它是图片的一部分,我想要点击的区域)但是我不能用该数据限制该区域.
我正在努力实现的一个例子:https://www.youtube.com/watch?v = K_JzL4kzCoE
做这个的最好方式是什么?
我有HBase集群的问题.
我在EMR emr-5.8.0上托管了一个带有Phoenix的HBase集群,并将其存储为S3.我有1个主站和5个从站4.x大节点.在区域服务器死亡后查询表时,我丢失了数据.我只面对存储模式为S3时遇到此问题,但HDFS工作正常.以下是我遵循的步骤.
我相信一旦新节点启动,HBase会重放WAL,我也可以在HDFS新RS目录上看到WAL文件.但不知怎的,我没有看到表格中的完整数据.
能不能让我知道可能出现什么问题.如果我必须设置任何属性,请告诉我.
如果您需要,我很乐意提供更多细节.
在UserControls/Pages之间导航的最佳方法是什么(在浏览器体验之外)?我对Silverlight相当新,甚至更新于mvvm模式.
导航框架与MVVM Light Toolkit的集成程度如何?使用两者进行一般应用程序流控制的代码段很棒.
计划是使用导航框架进行一般流程或使用Jeremy Likeness的区域管理方法(http://csharperimage.jeremylikness.com/search/label/regions)并根据需要交换区域.我见过一些提到替换Visual Root的地方,但这对我来说听起来像是一个黑客.
任何建议,片段或大方向的推动都将不胜感激.
谢谢.
通过API连接到AWS CloudFront时,无论我做什么,都会得到异常:
Credential should be scoped to a valid region
Run Code Online (Sandbox Code Playgroud)
相同的凭据可用于帐户具有其权限的任何其他请求,例如S3。
我遇到了一个奇怪的性能问题,对我正在经历的行为进行解释会很好.
我正在使用System.Drawing.Region.IsVisible(PointF)来确定一个点是否在多边形内.这通常效果很好,但昨天我注意到,如果多边形很复杂并且由大的x和y值组成,则IsVisible方法的性能会变得非常慢.
下面是一些重现问题的代码(以及显示多边形形状的图像),对于较大的数组大小而言很抱歉,但在问题出现之前,多边形需要非常复杂.
当在原始点上调用IsVisible时,我的机器需要460 651毫秒才能完成,而当我首先将所有点除以1000,然后调用该方法时,它需要1毫秒.为什么我在时间上看到如此大的差异?我不认为浮动的实际值会影响性能.
using System;
using System.Diagnostics;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Linq;
namespace PerformanceTest
{
class Program
{
static void Main(string[] args)
{
// Create complex polygon with large x and y values
float[] xValues = {1.014498E+07f, 1.016254E+07f, 1.019764E+07f, 1.021519E+07f, 1.023274E+07f, 1.026785E+07f, 1.026785E+07f, 1.02854E+07f, 1.02854E+07f, 1.030295E+07f, 1.03205E+07f, 1.033805E+07f, 1.035561E+07f, 1.037316E+07f, 1.039071E+07f, 1.040826E+07f, 1.042581E+07f, 1.044337E+07f, 1.046092E+07f, 1.047847E+07f, 1.049602E+07f, 1.051357E+07f, 1.054868E+07f, 1.056623E+07f, 1.058378E+07f, 1.060133E+07f, 1.061888E+07f, 1.061888E+07f, 1.063644E+07f, 1.065399E+07f, 1.068909E+07f, 1.068909E+07f, 1.070664E+07f, 1.07242E+07f, 1.074175E+07f, 1.074175E+07f, 1.07593E+07f, 1.07593E+07f, 1.077685E+07f, 1.07944E+07f, 1.07944E+07f, …Run Code Online (Sandbox Code Playgroud) region ×10
c# ×2
hbase ×2
winforms ×2
wpf ×2
amazon-ec2 ×1
amazon-s3 ×1
api ×1
controls ×1
datagrid ×1
elisp ×1
emacs ×1
emr ×1
gdi+ ×1
graphicspath ×1
hadoop ×1
iphone ×1
mef ×1
module ×1
mvvm ×1
mvvm-light ×1
navigation ×1
prism ×1
prism-4 ×1
scroll ×1
selection ×1
split ×1
transparency ×1
xcode ×1