POST
|
Has anyone had success adding a carousel modal into the splash widget? We would like to be able to display the splash widget when the web map loads, and keep the functionality of 'click to not show again' but then have the ability to page through a modal. I have seen the example of the tabbed welcome widget, but that's not quite what we are going for here. Thanks!
... View more
07-23-2019
09:10 AM
|
0
|
0
|
447
|
POST
|
I just noticed the other day on the About page, software updates section, a message says 'Checking for Updates is Blocked'. We were on Pro 2.3 and we all noticed it, and then upgraded to 2.4 yesterday and we all still have that message. Here's the kicker, we are using a configuration I made, and when I open the regular ArcGISPro.exe I don't get that updates blocked message. In the configuration I created, I only made a custom splash screen, the About and Startup page overrides are commented out. So I don't see how this could be causing this message. I checked my registry and CheckForUpdatesOnStartup = 1. Is this built-in behavior of configurations to block update checking.. or a bug.. or am I missing something obvious in the code?
... View more
06-28-2019
07:29 AM
|
0
|
2
|
1141
|
POST
|
Thank you Uma, I added this to my splashScreenViewModel.cs and it worked and my splash screen is looking great now
... View more
06-26-2019
11:19 AM
|
0
|
0
|
1954
|
POST
|
Uma, forgive me but I don't quite follow what that would look like in the configuration as far as coding that. Is there some method that I'd pass the registry key into to return the version? I'd like to avoid hardcoding version="2.3" into the xaml and have static text, I'd like it to change dynamically with future upgrades.
... View more
06-25-2019
02:08 PM
|
0
|
2
|
1954
|
POST
|
Thanks Uma! Exactly what I was after. Is there a c# method to get Pro's version number to display on the splash screen? I tinkered around a bit and could only get the aassembly/build info, but could not get Pros number.
... View more
06-25-2019
01:23 PM
|
0
|
4
|
1954
|
POST
|
If you are referring to <AddInInfo desktopVersion> tag, I too am struggling for a way to display this on my splash screen. ESRI, you should revamp your configuration templates to at least show these basic things on the splash screen, Pro version, initializing dots, etc. I am pulling my hair out over here trying to find examples of these simple things!
... View more
06-24-2019
01:27 PM
|
1
|
0
|
554
|
POST
|
After much Googling, I am resorting to posting here. I'd like to simply show the initializing continuous progress dots on the splash screen of my configuration - you know the dots that Pro's default splash screen already shows? I have not been able to find any examples of this.. and all I find on Google about progress bars in C# is for WindowsForms apps. Would that work here? I feel like this is becoming a whole lot more complicated than it should be. And I can't believe there isn't a community sample of this or a sample in one of the many videos about the Pro SDK that shows a simple progress indicator on the splash screen. Please direct me to it if there is! Thanks! These dots that run across the screen.. even Visual Studio uses them when it loads.
... View more
06-24-2019
12:21 PM
|
0
|
6
|
2462
|
POST
|
Thanks Gintautas, I am brand new to C# and of course there will be a more elegant way than my hacked together code
... View more
05-16-2019
07:23 AM
|
0
|
0
|
6117
|
POST
|
Hey John, our public web maps have hyperlinks. They open various documents stored on our server. The attribute value is just the name of the document, for instance 0265378.pdf, but on the back end in WAB there is some code that changes the feature's pop up to say 'Click here for more information' and points to the right path. I did not take part in the configuration of this though, so I would have to look into it and get back to you on exactly how it is done.
... View more
05-16-2019
07:20 AM
|
0
|
0
|
1264
|
POST
|
Solved it, thanks for your help even though I was confused about what you said initially. The cursor code was really what I needed and I ended up restructuring and looping through the GetFeatures rather than the lyrs in the TOC as the ESRI example I started off with did. Here are some snippets. // Get the features that intersect the sketch geometry and loop through
var features = mv.GetFeatures(geometry);
foreach (KeyValuePair<BasicFeatureLayer, List<long>> fL in features)
{
// Loop through feature class list and match to user selection
featureName = fL.Key.GetTable().GetName();
foreach (KeyValuePair<string, string> item in list)
{
if (item.Key == featureName)
{
// Get selection information for message box
selected = features[fL.Key].Count;
total = total + selected;
sb.AppendLine($@"{selected} {(selected == 1 ? "record" : "records")} selected in {fL.Key.Name}");
// Get as-built field(s) and selected object ids
abFields = item.Value.Split(' ');
var oids = fL.Value;
// If water pipes are selected loop through both as-built fields and generate file paths
if (abFields.Count() > 1)
{
foreach (var ab in abFields)
{
asbuilt = GetAttributeValues(fL.Key, ab, fL.Value);
if (asbuilt != "")
{
if (ab.Contains("MAP1"))
{
path = docPath + asbuilt;
}
else
path = notesPath + asbuilt;
paths.Add(path);
}
}
}
// If other features are selected use single as-built field and generate file paths
else
{
asbuilt = GetAttributeValues(fL.Key, abFields[0], fL.Value);
if (asbuilt != "")
{
path = docPath + asbuilt;
paths.Add(path);
}
}
}
}
}
// Method to use cursor and retrieve attribute values by field
public static string GetAttributeValues(BasicFeatureLayer inFL, string fieldName, List<long> inOIDs)
{
string attValue = "";
QueryFilter queryFilter = new QueryFilter { ObjectIDs = inOIDs };
using (RowCursor rowCursor = inFL.Search(queryFilter))
{
while (rowCursor.MoveNext())
{
using (Row row = rowCursor.Current)
{
attValue = Convert.ToString(row[fieldName]);
}
}
}
return attValue;
}
... View more
05-15-2019
11:39 AM
|
0
|
2
|
6117
|
IDEA
|
I would consider myself an intermediate Python programmer, and having just recently crossed over to the dark side of Visual Studio/.NET/C# and never having touched another programming language, the learning curve is pretty steep. I agree with others that adding Python addins to Pro opens the door to many more people to start customizing their GIS workflows/interfaces that are scared away by the .NET SDK.
... View more
05-15-2019
08:07 AM
|
4
|
0
|
978
|
POST
|
Thanks for the reply, I am somewhat understanding the cursor, but I am not sure what you mean when you said 'at first instead of list kvp in features'. I am not following where this would be inserted, and if I'd still be looping through lyrs?
... View more
05-15-2019
07:47 AM
|
0
|
0
|
6117
|
POST
|
I am having a similar issue.. I'd like the user to draw a box with a map tool, and from there parse the attribute table for a specific field. How exactly do you use the inspector or query filter with another field along with the oids returned from GetFeatures(geometry)? I started developing this from an identify example where it loops through the features in the TOC and determines which are selected from the user input geometry. I have a set of 5 specific layers of interest and each has a specific field of interest I'd like to be able to pull attribute values from. Here is a snippet.. I'd like to insert the logic right under sb.ApendLine, and build an array of the attribute values from the selection. // Create dictionary of feature classes and as-built field names
List<KeyValuePair<string, string>> list = new List<KeyValuePair<string, string>>();
list.Add(new KeyValuePair<string, string>("gjgislucity.DBO.SWNETG", "NTG_USER15"));
list.Add(new KeyValuePair<string, string>("gjgislucity.DBO.SWNETMHG", "MAG_USER15"));
list.Add(new KeyValuePair<string, string>("gjgislucity.DBO.SMVCONDTG", "CNG_USER4"));
list.Add(new KeyValuePair<string, string>("gjgislucity.DBO.SMVSTRUCG", "SNG_USER5"));
list.Add(new KeyValuePair<string, string>("gjgislucity.DBO.WTPIPEG", "PPG_MAP1_NO PPG_USER6"));
var mv = MapView.Active;
var selectionResult = await QueuedTask.Run(() =>
{
// Initiate string builder for message window
var sb = new System.Text.StringBuilder();
// Get the features that intersect the sketch geometry
var features = mv.GetFeatures(geometry);
// Get all layer definitions, loop through and determine which are selected
var lyrs = mv.Map.GetLayersAsFlattenedList().OfType<FeatureLayer>();
foreach (var lyr in lyrs)
{
var fCnt = features.ContainsKey(lyr) ? features[lyr].Count : 0;
if (fCnt != 0)
{
// If layer is selected, get it's name and decide if in list
var fcName = lyr.GetFeatureClass().GetName();
foreach (KeyValuePair<string, string> item in list)
{
if (item.Key == fcName)
{
total = total + fCnt;
sb.AppendLine($@"{fCnt} {(fCnt == 1 ? "record" : "records")} selected for {lyr.Name}");
}
}
}
}
... View more
05-14-2019
02:25 PM
|
0
|
2
|
6117
|
POST
|
Thanks Matt, got it working in about 10 min! Good trick to change the cursor back after the click event. I noticed the url they used tells google to open the map facing either Eeast or West, I forget which, but changing the 90 to a 0 makes it open facing North.
... View more
05-03-2019
12:20 PM
|
0
|
1
|
823
|
POST
|
Now the next step is to have it open a link not when the user clicks the button, but when the user clicks the button and THEN clicks in the map...
... View more
05-02-2019
03:57 PM
|
0
|
2
|
1972
|
Title | Kudos | Posted |
---|---|---|
1 | 06-24-2019 01:27 PM | |
1 | 04-12-2019 07:47 AM | |
3 | 04-17-2019 01:02 PM | |
1 | 04-02-2019 12:51 PM | |
14 | 04-15-2019 12:52 PM |
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:24 AM
|